Methods and systems for managing electronic messages

ABSTRACT

Methods and systems provide tools that enable users to manage electronic messages by obtaining additional information about senders, receivers or entities mentioned in messages. A computing device may identify a sender or recipient of an electronic message and search a database to obtain additional data about the sender or recipient. The additional data may be displayed with the electronic message. The additional data may also be used to calculate importance values that the computing device can use to highlight, preferentially display, or sort the electronic messages. The importance values may be calculated by applying sorting algorithms to the retrieved additional data based on user defined criteria. Importance values may also be based upon information obtained from messages. A graphical user interface may be implemented to enable users to specify criteria and weighting factors to apply in sorting electronic messages.

RELATED APPLICATIONS

This application claims the benefit of priority to U.S. ProvisionalApplication No. 61/262,245, entitled “Methods and Systems for ManagingElectronic Messages” filed Nov. 18, 2009, the entire contents of whichare hereby incorporated by reference.

FIELD OF THE INVENTION

The present invention relates generally to computer user interfacesystems and more particularly to user interface systems for managingemails.

BACKGROUND

Electronic messaging has become a vital part of business and everydaylife. The ease and efficiency of sending electronic messages, such asemail messages, has led to a steady increase in the number of messagesthat many people receive every day. As a result, users must spend moretime sifting through and reading received messages. For some people,particularly those in leadership positions, the volume of electronicmessages received daily renders it nearly impossible to review eachmessage. For example, a chief executive officer of a large corporationmight receive more than 500 messages per day. Typically, electronicmessages range from the important to the mundane, such as unsolicitedadvertisements and spam. Thus, users must exercise care while scanningreceived electronic messages to ensure that important messages are notoverlooked. However, scanning through more than 500 messages is adaunting and time consuming task.

SUMMARY

An aspect of the present invention includes a method for displaying aplurality of electronic messages on a computing device, includingparsing each of the plurality of electronic messages to obtain identityinformation about an entity associated with each electronic message,searching a first database for additional data related to the obtainedidentity information, retrieving additional data related to the obtainedidentity information from the first database, and adjusting the displayof the plurality of electronic message based on the retrieved additionaldata. Adjustments to the display of messages may include highlighting,preferentially displaying, sorting and blocking (i.e., not displaying)messages based upon the additional data or determinations made based onthe additional data. In the method, the plurality of electronic messagesmay be email messages, and the entity may be selected from a recipientof each electronic message, a sender of the electronic message, anindividual mentioned in each electronic message, and a company mentionedin each electronic message. In the method, the first database may be acontacts database or may be a database accessed via the Internet. In afurther aspect, the method may further include storing at least aportion of the retrieved additional data related to the obtainedidentity information in a prior search results database, searching theprior search results database for previously retrieve additional datarelated to the obtained identity information, and accessing previouslyretrieve additional data related to the obtained identity informationfrom the prior search results database, in which searching the firstdatabase and retrieving additional data from the first database areperformed if no previously retrieve additional data related to theobtained identity information is retrieved from the prior search resultsdatabase, although such searches may also be performed if the time sincea last search exceeds a predetermined threshold. In a further aspect,the method may include applying an algorithm to the additional dataretrieved for each electronic message to generate or calculate animportance value, which may be used as a basis for highlighting,preferentially displaying or sorting the plurality of electronicmessages. The method may include obtaining a variety of types ofadditional data, determining an importance factor based each of thetypes of additional data and calculating the importance value based uponthe determined importance factors which may be adjusted by user-definedweighting factors. The importance factors may be determined for: a timeto review the message; whether the message originated inside or outsidea user's organization; a measure of time a user has replied to themessage sender; a political party of the sender; attractiveness of thesender; gender of the sender; a date the message was sent; whether thesender is preapproved by a user; keywords which appear in the message;whether the message was sent solely to a user; whether the sender'scompany is of concern to a user; an alma mater of the sender; whetherthe sender is a family member of a user; an estimated wealth of thesender; popularity of the sender; friends in common between the senderand a user; whether the sender is well traveled; a number of questionmarks within the message body; a number of exclamation points within themessage body; an analysis of language used in the message body; amonetary symbol within the message body; an age of the sender; anational origin of the sender; a skin tone of the sender; a measure of anumber of times messages from the sender have been reviewed but notreplied to; a measure of a number of times messages from the sender havenot been opened; and a distance between the sender's company and a user.The method of calculating an importance value for each electronicmessage may include multiplying a weighting factor times an additionaldata related to the obtained identity information, and may involvemultiple algorithms applied to multiple types of additional data, theresults which may be adjusted by weighting factors corresponding to eachcriteria. Such importance criteria and weighting factors may be setbased on user inputs, such as may be provided in a graphical userinterface (GUI). In a further aspect, searches of databases may only beperformed for activating permission for which a weighting factor exceedsa predetermined minimum threshold so as to perform searches only forthose types of information likely to impact a message priority orimportance value.

Another aspect provides a computing device that includes a processor, adisplay coupled to the processor, and memory coupled to the processor,in which the processor is configured with processor-executableinstructions to perform operations of the various aspect methods.

Another aspect provides a computing device that includes means foraccomplishing the functions involved in the operations of the variousaspect methods.

Another aspect is a computer readable storage medium on which are storedcomputer-executable instructions which when executed would cause acomputer to accomplish the processes involved in the various aspectmethods.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated herein and constitutepart of this specification, illustrate exemplary aspects of theinvention. Together with the general description given above and thedetailed description given below, the drawings serve to explain featuresof the invention.

FIG. 1 is a computer display of an email message in which the signaturedata is presented before the email text according to an aspect.

FIG. 2 is a computer display of an email message including additionalsender data presented in conjunction with the email message according toan aspect.

FIG. 3 is a computer display of sorted group of email messages arrangedin a horizontal stack and including additional sender data for viewingby the user according to an aspect.

FIGS. 4 and 5 are computer displays of sorted group of emails arrangedin a yearbook style including additional sender data for viewing by theuser according to an aspect.

FIG. 6A is a process flow diagram of an aspect method for acquiring andpresenting additional sender data in conjunction with an email messageaccording to an aspect.

FIG. 6B is a process flow diagram of another aspect method for acquiringand presenting additional sender data in conjunction with an emailmessage according to an aspect.

FIG. 7 is a process flow diagram of an aspect method for customizingsearching criteria when searching databases for additional sender dataaccording to an aspect.

FIGS. 8A and 8B are process flow diagrams of two aspect methods forsorting email messages based on additional sender data according to anaspect.

FIG. 9 is a process flow diagram of a method for calculating a timeimportance factor for an electronic message according to an aspect.

FIG. 10 is a process flow diagram of a method for calculating anExternalOrInternal importance factor for an electronic message accordingto an aspect.

FIG. 11 is a process flow diagram of a method for calculating aHowOftenIHaveReplied importance factor for an electronic messageaccording to an aspect.

FIG. 12 is a process flow diagram of a method for calculating aPoliticalParty importance factor for an electronic message according toan aspect.

FIG. 13 is a process flow diagram of a method for calculating anAttractiveness importance factor for an electronic message according toan aspect.

FIG. 14 is a process flow diagram of a method for calculating a Genderimportance factor for an electronic message according to an aspect.

FIG. 15 is a process flow diagram of a method for calculating a DateSentimportance factor for an electronic message according to an aspect.

FIG. 16 is a process flow diagram of a method for calculating aPreapproved importance factor for an electronic message according to anaspect.

FIG. 17 is a process flow diagram of a method for calculating a Keywordimportance factor for an electronic message according to an aspect.

FIG. 18 is a process flow diagram of a method for calculating aSentJustToMe importance factor for an electronic message according to anaspect.

FIG. 19 is a process flow diagram of a method for calculating aCompanyCareAbout importance factor for an electronic message accordingto an aspect.

FIG. 20 is a process flow diagram of a method for calculating an Alumimportance factor for an electronic message according to an aspect.

FIG. 21 is a process flow diagram of a method for calculating aFamilyMember importance factor for an electronic message according to anaspect.

FIG. 22 is a process flow diagram of a method for calculating anEstimatedWealth importance factor for an electronic message according toan aspect.

FIG. 23 is a process flow diagram of a method for calculating aPopularity importance factor for an electronic message according to anaspect.

FIG. 24 is a process flow diagram of a method for calculating aFriendsInCommon importance factor for an electronic message according toan aspect.

FIG. 25 is a process flow diagram of a method for calculating aWellTraveled? importance factor for an electronic message according toan aspect.

FIG. 26 is a process flow diagram of a method for calculating aNumberOf_?_Marks importance factor for an electronic message accordingto an aspect.

FIG. 27 is a process flow diagram of a method for calculating aNumberOf_!_Marks importance factor for an electronic message accordingto an aspect.

FIG. 28 is a process flow diagram of a method for calculating aFriendlinessOfMessage importance factor for an electronic messageaccording to an aspect.

FIG. 29 is a process flow diagram of a method for calculating an Ageimportance factor for an electronic message according to an aspect.

FIG. 30 is a process flow diagram of a method for calculating aNationalOrigin importance factor for an electronic message according toan aspect.

FIG. 31 is a process flow diagram of a method for calculating aColorOfSkin importance factor for an electronic message according to anaspect.

FIG. 32 is a process flow diagram of a method for calculating aReadButNotRepliedTo importance factor for an electronic messageaccording to an aspect.

FIG. 33 is a process flow diagram of a method for calculating aReceivedButNotOpen importance factor for an electronic message accordingto an aspect.

FIG. 34 is a process flow diagram of a method for calculating aDistanceFromCompany importance factor for an electronic messageaccording to an aspect.

FIG. 35 is a component block diagram of an example computing devicesuitable for use with the various aspects.

FIG. 36 is a component block diagram of an example computer suitable foruse with the various aspects.

FIG. 37 is a component block diagram of an example applicationdevelopment workstation suitable for use with the various aspects.

FIG. 38 is a communication system block diagram of an electronic messagedistribution system suitable for use with the various aspects.

FIG. 39 is a process flow diagram of a method for implementing thevarious aspects on a server or e-mail server.

DETAILED DESCRIPTION

The various aspects will be described in detail with reference to theaccompanying drawings. Wherever possible, the same reference numberswill be used throughout the drawings to refer to the same or like parts.References made to particular examples and implementations are forillustrative purposes and are not intended to limit the scope of theinvention or the claims.

The word “exemplary” is used herein to mean “serving as an example,instance, or illustration.” Any implementation described herein as“exemplary” is not necessarily to be construed as preferred oradvantageous over other implementations.

As used herein, the terms “personal electronic device,” “computingdevice” and “portable computing device” refer to any one or all ofcellular telephones, personal data assistants (PDAs), palm-topcomputers, notebook computers, personal computers, wireless electronicmail receivers and cellular telephone receivers (e.g., the Blackberry®and Treo® devices), multimedia Internet enabled cellular telephones(e.g., the Blackberry Storm®), and similar electronic devices thatinclude a programmable processor, memory, and a connected or integraltouch surface or other pointing device (e.g., a computer mouse).

As used herein, “electronic message” refers any type of message that istransmitted from a sender to one or a group of recipients usingelectronic communication methods, and may include, for example,telephonic voice mail messages, electronic mail (email) messages, textmessages, simple message service (SMS) messages, multimedia messageservice (MMS) messages, instant messaging (IM) messages, and other formsof brief electronic messages, such as messages sent via Twitter.comknown as “tweets.” The term “database” is used herein to include localdatabases (e.g., a contacts database) and searchable information storesaccessible via the Internet (e.g., Google®, Bing®, etc.). Thus, theterms “database” and “Internet” may be used interchangeably herein.

Electronic messaging has become an integral part of the daily lives ofmany people. This quick and economical mode of communication hasrevolutionized the way people exchange information through sending andreceiving electronic messages for personal or business purposes.However, the popularity of email has increased the volume ofcommunications that people receive a daily basis, as well as to abusesof the communication medium. As a result, many users now receive moreelectronic mail than they can possibly read, with importantcommunications mixed in with numerous unwanted and unsolicitedelectronic messages of dubious origin and potentially including malware.

Some users receive an unmanageable number of electronic messages daily.To avoid missing or overlooking important electronic messages, usersmust diligently scan their messages. However, sorting through a largevolume of electronic messages to cull the important from the mundane canbe time consuming and tedious, and presents a significant burden forthose with demanding schedules.

The various aspect methods enable users to efficiently manage receivedelectronic messages by providing new ways to highlight, sort and culllarge volumes of electronic messages. To render the review of electronicmessages more manageable, a computing device may be configured toidentify and retrieve additional information about entities included inthe electronic message (e.g., senders, recipients, and people orbusinesses mentioned with an electronic messages), and use theadditional data to adjust the presentation of electronic messages to theuser. The computing device may be configured to retrieve additional datarelevant to the entities in the electronic message by searching thecontents of the electronic message and/or a database or the Internet.The computing device may further be configured to provide an importancedetermining function by which the computing device may calculate animportance value based upon the retrieved additional data. The computingdevice may be further configured to adjust the display of electronicmessages based upon the retrieved additional data or an importance valuedetermined from such data, such as by appending some of the additionaldata to message displays (e.g., company name/address information),highlighting messages, preferentially displaying certain messages,and/or sorting messages. The computing device may be further configuredto calculate the importance factor based on different criteria usinginformation presented in the electronic message and/or additional dataretrieved about the entities from a database or the Internet.

A typical electronic message will mention one or more entities that maybe important to the recipient, such as the sender, other recipients ofthe electronic message, and/or individuals or companies mentioned withinthe message. The computing device may be configured to enable users toselect particular types of entities (i.e., senders, recipients or thosementioned in the message) for which they would like to receiveadditional data to help them highlight, preferentially display, and sortmessages in their inbox. For example, based on a user preference, thecomputing device may search a database (e.g., a contacts database)and/or the Internet for additional data for additional informationregarding the sender of each electronic message. Additionally oralternatively, the user may also configure the computing device tosearch the database and/or the Internet for additional data related toother recipients of the electronic message. Additionally, a computingdevice may be configured to search and retrieve data about an individualor company mentioned in the body of the electronic message. Also, acomputing device may be configured to search the body of the electronicmessage for particular punctuation usage, key words, key names, and wordusage (e.g., pop culture phraseology), and use such information toadjust the display of messages, such as by sorting messages based on theinformation (or an importance factor based on the information) andincluding some of the information in message menu displays so as tohighlight particular messages.

Automatically locating additional information regarding senders andusing this information to adjust the presentation of messages to usersmay help busy email recipients to quickly identify messages they wish toread or otherwise prioritize messages based upon personal preferences.For example, businessmen may be interested in reading messages fromtheir customers, suppliers and competitors before those of employees,and put off until last any unsolicited email from unknown individualswith little apparent relation to the reader. As another example, someusers may benefit from viewing pictures of the senders since peoplerecognize faces quickly. As a further example, small business owners,such as realtors or insurance salesman, may benefit from prioritizingelectronic messages from those who may represent the greatest potentialfor a significant sale. By leveraging the additional informationregarding senders and other recipients of electronic messages to adjustthe presentation of messages, such as highlighting, preferentiallydisplaying, sorting or ordering messages, within inbox based upon suchinformation, the various aspects can enable users to quickly recognizethe more urgent and important messages.

Various aspects leverage the ubiquitous sources of public informationavailable via the Internet, private databases, and information withinthe messages themselves to provide users with more information regardingsenders and recipients of electronic messages, use that information toadjust the display of electronic messages, such as by highlighting,preferentially displaying, or sorting the electronic messages pending ininbox according to a user's preferences, to present messages in a mannerthat will enable users to rapidly prioritize their messages. Thus, thevarious aspects provide users with flexible and configurable tools forautomatically researching, highlighting particular messages,preferentially displaying messages, and sorting or organizing electronicmessages before they have been reviewed.

In a first aspect illustrated in FIG. 1, the computing device may beconfigured to adjust the presentation of messages by presenting thesignature data 106 of an email message before the email text 108,instead of at the end the email message 110 where it normally appears.By presenting the signature data 106 at the beginning of the emailmessage 110, the user can see who sent the message, along with thesignature data 106, before reading the email text 108. In many businesscommunications, the user's identity cannot be determined until thesignature block is read. The signature block typically includes thesender's job title and company information, which can be of great use toa recipient of the message and determining whether the message isimportant enough to justify the time required to read it. For example,if the user is interested in reading an email message 110 received froma sender employed at “Atomic 14.com,” presenting the company data at thebeginning of the email message may allow the user to immediatelyrecognize the importance of this email message 110. However, if theemail message 110 is from an entity with which the user does not wish tocommunicate, the user can quickly move to the next email message 110. Bypresenting the signature data 106 before the email text 108, thecomputing device may also allow the user to save the time required toscroll through the email to find the sender's signature data 106. Whenpresented with a large volume of email messages, even the small timesavings can be significant.

In a further aspect illustrated in FIG. 2, a computing device may beconfigured to allow users to manage email messages 110 by adjusting thepresentation of message by including additional information about thesender, positioned on a screen above for before the email text 108.Additional sender information may include a wide variety of informationthat is not typically available on public databases, such as areaccessible via the Internet. Examples of the kinds of additionalinformation that may be gathered and used to adjust the display ofelectronic messages include the sender's pictures 104 or his biographicdata 114, including the senders' company name, job title, age, gender,ethnicity, income, social networking data, social network linkages(e.g., number of friends on Facebook or links associated with a LinkedInaccount), Google™ hits, alma mater, home value, home address, imageswhich may be used to calculate a beauty importance value as describedherein, political affiliation, political donations, and the number oftimes the user has communicated with the sender. Other biographic data114 that may be sought and used to adjust the display or presentation ofmessages may be defined in user preference settings.

In addition to information that may be gathered from databases,including from the Internet, the computing device may be configured toobtain information from within the message itself that may be used toadjust the presentation of the message or calculate an importance valuefor highlighting, preferentially displaying or sorting messages. Also,information from within the message may be used to infer informationabout the sender, recipients, or the subject matter of the message thatcan be used in calculating an importance value or directly sortingmessages. Several types of information can be obtained from the messagebody which may be useful in adjusting the display of messages, includingsorting and prioritizing electronic messages according to userpreferences.

In a further aspect, the computing device may be configured to parse thereceived message to identify punctuation and word choices that can beused to infer information about the message that may be useful forsorting messages or calculating an importance value for highlighting,preferentially displaying or sorting messages for review. If users canbe informed of the nature of a message before reading it, suchinformation could be quite useful for prioritizing messages for reviewand reply. However, interpreting language is a difficult computing task.Nevertheless, some information can be inferred from punctuation symbolsand keyword usage. An example is the question mark (“?”) which is easilyidentified in a parsing operation and can be used as an importancecriteria and added to the information to be displayed to users since itindicates that the electronic message includes a question for the userto answer. Another example is the exclamation point (“!”) punctuationmark. Users may be interested in responding to all questions promptly,putting off informational messages for later. Similarly, users may beinterested in responding to messages which have a degree of urgency, asmay be indicated by the number of exclamation points in the messagebody. Thus, in an aspect, the computing device may parse the message todetermine how many “?” and “!” punctuation marks are present in themessage can use that information as a sorting and/or display criteria.Such importance criteria may be useful with electronic messages whichare received from persons selected by the user, such as Twitter messages(“tweets”), since in such circumstances the user already knowsinformation about the sender.

In another aspect, the computing device may parse the message toidentify currency punctuation (e.g., dollar signs) or currency of nouns(e.g., “dollar”, “Euro” and, “yen”, “won”). Searching electronicmessages for references to currency would enable the computing device toinform users of messages that relate to money. Some users then maychoose to prioritize messages based upon whether messages concernmonetary matters or not. In a further aspect, the computing device mayparse messages for key words, to identify personal names, to identifycompany names, and/or to recognize slang words and acronyms which mayindicate a personal message, such as might be received from a friend(e.g., “LOL,” “OMG” etc.).

While any single criterion, punctuation mark or search term may notprovide enough information to enable the computing device to highlight,preferentially display, and sort electronic messages accurately enoughto meet user needs, a combination of factors may prove more effective.Thus in an aspect, the importance value may be calculated based upon acombination of criteria that may be given variable emphasis byuser-defined weighting factors in order to arrive at an overallimportance value. For instance, the computing device may implement animportance value calculation algorithm that applies a first weight tothe number of question marks found in the message, applies a secondweight to reference to currency in the message, applies a third weightto exclamation points punctuation in the message, applies a fourthweight to a number of informal or personal terms included in themessage, and applies a fifth weight to one or more keywords or key namesrecognized in the message, and sums (or averages) the products in orderto arrive at an overall importance value for each message.

In a further aspect, the computing device may be configured to obtain orinfer information regarding an entity associated with the message, suchas the sender or other recipients, based upon their name. For example,in many cases the gender of a person can be inferred from the user'sfirst name. This may be accomplished in a table lookup algorithm usingtable or database of common names. Similarly, the ethnicity of a personmay be inferred from the user's person's last name. Inferring ethnicitymay be accomplished using a set of rules for analyzing names or using atable lookup algorithm. Such a table lookup algorithm may make use ofexternal databases which have sufficient storage capacity store a largenumber of names and information regarding their ethnic origin. Whilefirst names are often ambiguous regarding a person's gender, and thelink of last names to ethnicity can be unreliable (especially in theUnited States), the use of such unreliable criteria in the variousaspects is for general ranking purposes only. If a mistake is maderegarding a person's gender or ethnicity, the consequences are minimalas the result is that the electronic message is given a slightly loweror higher importance value than it might otherwise have received. Also,the use of multiple factors for developing an importance value will tendto compensate for inferences with respect to gender and ethnicity.Further, gender and ethnicity may be determined from additionalinformation gathered from internal and external databases (e.g., theuser's contacts database, public records, social networking sites,etc.).

A computing device may be configured to parse each electronic message toidentify the sender, other recipients, and/or other informationregarding the electronic message.

Using information obtained from the electronic message, the computingdevice can calculate the determined values for factors related to themessage itself, such as internalOrExternal(e) (i.e., whether the senderis within the organization or from an external organization);dateSent(e); Keywords(e); SentJustToMe(e) (i.e., a factor determinebased upon the length of time the message has been pending in theinbox); Length(e) (i.e., the length of the message); CompanyCareAbout(e)(which may be determined by comparing a company name, as may appear in asignature block, against a database of companies which the user caresabout); PreApproved(e) (which may be determined by comparing thesender's name to a database of pre-approved senders); FamilyMember(e)(which may be determined by comparing the sender's name to a database offamily member names); etc. In making these determinations, the computingdevice may also compare the message sender's name to an internaldatabase, such as a contacts database, a list of family members, a listof keywords or key names to search for, a database of pre-approved orpre-rejected senders, etc.

Using the sender's identity, for example, the computing device cansearch databases accessible by the computing device and the Internet toobtain a wide variety of demographic information. Using demographicinformation obtained from databases with the Internet, the computingdevice can calculate or determine values for each demographic factor,such as howOftenHaveIReplied(e) (which may be determined from a databaseof sent messages); politicalParty(e); Attractiveness(e) (which may becalculated using an algorithm described in more detail below);Gender(e); Alum(e); EstimatedWealth(e); LinkedInPopularity(e); andFriendsInCommon(e). These factors are provided as examples of the typeof information in criteria that may be used in the various aspects forhighlighting, preferentially displaying, sorting or prioritizingelectronic messages, and more or fewer factors may be used.

A computing device may also be configured to use different methods toretrieve the additional information about electronic message senders. Ina first method, the computing device may be configured to searchdatabases including internal and external databases such as contacts andpictures databases. Additional data regarding a sender may be obtainedby searching the Internet using the sender's name as a search criterionin various search engines and accessing various websites. Search enginesthat may be used to search for additional sender data include Google™,Bing™, Lexis Nexus® and AltaVista™. Web sites that may be accessedinclude, for example, 411.com™, Whitepages.com™, Yellowpages.com™,Zabasearch.com, Domania.com, etc. For example, the computing device maybe configured to search for a person's home address by using the user'sname as a search criteria entered into the 411.com™ directory. Once thesender's home address is identified, the computing device may use thataddress as a search criteria in Domania.com to retrieve the market valueof sender's home. Thus, the computing device can quickly obtaininformation regarding the relative wealth of a sender of an email. Aperson's picture may also be found by conducting an Internet imagesearch such as by the Google™ Images search engine.

In a second method, the computer may be configured to store informationobtained about each electronic mail sender in a local database (referredto herein as the “prior search results database”) that can be accessedfor subsequent electronic messages. Thus, information regarding sendersthat has already been obtained for an earlier email message 110 can bequickly accessed from the prior search results database by the computingdevice without having to access databases on the Internet. In an aspectdescribed below with reference to FIG. 8B, the computing device may beconfigured to determine whether information has already been obtainedabout a sender and is stored in the prior search results database, andonly search other databases or access the Internet if a prior search hasnot been performed on a message sender (i.e., no prior search resultsfor the sender are stored in the prior search results database).

In a third method, the computing device may be configured to search alocal database of user contacts, such as electronic address book as istypically associated with electronic mail applications (e.g., MicrosoftOutlook®). Such information may be of most relevance to a user, sincesuch a database may include a photograph, nicknames, pre-approval orpre-rejection ratings, significance ratings, and other factors thatusers may include in their contacts database.

The computing device may also be configured to use each of the methodsdescribed above according to a prioritize order and as may be applicableto a particular electronic message. For example, the computing devicemay first access the prior search results database first to determinewhether information has already been obtained for the sender of theparticular electronic message. If the sender's information is notincluded in the prior search results database, the computing device mayattempt to find the sender within the user's contacts database. If thesender is not included among the user's contacts, the computing devicemay then access the Internet to conduct searches using the sender'sidentity information to obtain additional information regarding thesender. Even if information has previously been obtained for theelectronic message sender and stored in the prior search resultsdatabase, the computing device may be configured to periodically updatethe search results by accessing Internet-accessible search engines andadding any newly identified information to the prior search resultsdatabase.

Data retrieved from an internal database, such as a user's contactsdatabase, may be more accurate than data that can be retrieved from theInternet. Therefore, in an aspect, the computing device may beconfigured to conduct searches of internal and external databases in anorder that may be predetermined or defined by a user's configurationsetting. For example, the computing device may first search internaldatabases (e.g., the prior search results database and a contactsdatabase) first to determine whether the sender's demographic data isavailable before searching external databases and the/or Internet. Thecomputing device may further be configured to search the Internet foradditional sender data that is not available on internal databases.

Additional information may also be inferred from the sender's name whichmay be used for calculating an importance value for highlighting,preferentially displaying, sorting or ranking electronic messages. Forexample, the computing device may be configured to infer the gender ofthe electronic message sender based on the sender's first name ifincluded in the email address, alias or message signature block. Asanother example, the computing device may be configured to infer anethnic origin of the sender based on the sender's first and last nameincluded in the email address, alias or message signature block. Usingpersonal information inferred from the sender's name, a user mayconfigure the computing device to highlight, preferentially display, orsort messages according to personal preferences, such as prioritizingelectronic messages sent by attractive Latin men or women.

A computing device can prioritize, highlight and/or organize (e.g., sortor reorder) electronic messages pending in inbox based upon an overall,average or amalgamated importance value assigned to each message basedupon obtained or inferred information relevant to several evaluationcriteria. In an aspect, the generation of overall, average oramalgamated importance value may apply weighting factors to variouscriteria in order to provide a user-customized rating or sortingcapability. Further, importance criteria based upon message content maybe combined with importance criteria based upon additional informationabout message entities (e.g., the sender or other recipients) to providea more robust highlighting or sorting capability. When a importancecriteria based upon additional information about entities obtained fromexternal databases are combined with importance criteria based oninformation contained within or inferred from the message itself, thecomputing device can provide a robust mechanism for identifyingelectronic messages of highest importance to the user and graphicallypresenting messages in a manner that allows the user to immediatelygrasp their importance.

By enabling users to set criteria weighting factors according to theirown preferences, the various aspects permit the computing device topresent electronic messages and/or sort in a format that uniquelymatches their own needs, priorities and preferences. For example, a usermay adjust weighting factor preferences so that electronic messages fromwealthy attractive Nordic women asking questions using friendlyphraseology are given a high priority unless they are Republicans. Asanother example, a user may adjust weighting factor preferences so thatelectronic messages from unattractive Latin males including currencyterms and multiple exclamation point punctuation marks are given a highpriority.

A variety of algorithms may be implemented for calculating anamalgamated importance value. In an exemplary aspect, the importancevalue for each electronic message may be calculated using a simpleweighted sum of all importance factors in which user preferencesdetermine the weighting factors applied to each criteria. For example,the following ImportanceValue(e) formula may be calculated to provide aimportance criteria using biographical data 114 that may be obtainedfrom the Internet and/or databases accessible by the computing device,information obtained from messages, and values that may be inferred orcalculated from such information:

ImportanceValue(e)=internalOrExternal(e)*W1+howOftenHaveIReplied(e)*W2+politicalParty(e)*W3+Attractiveness(e)*W4+Gender(e)W5+dateSent(e)*W6+PreApproved(e)*W7+Length(e)*W8+Keywords(e)*W9+SentJustToMe(e)*W10+CompanyCareAbout(e)*W11+Alum(e)*W12+FamilyMember(e)*W13+EstimatedWealth(e)*W14+LinkedInPopularity(e)*W15+FriendsInCommon(e)*W16+NumberOf_?_Marks(e)*W17+NumberOf_!_Marks(e)*W18+FriendlinessOfMessage*W19

where factors W1 through W19 are weighting factors that users mayconfigure according to preferences regarding how electronic messagesshould be prioritized. Such weighting factors may be stored in aconfiguration data table that may be accessed by an importance valuealgorithm. Further discussion of the importance value formula and thedetermination of importance criteria factors is provided below withreference to FIGS. 9-34.

In addition to using the additional sender data to sort or prioritizeelectronic messages, the computing device may highlight messages orpresent some of the additional data to the user in a manner that mayassist the user in scanning and prioritizing electronic messages. Forexample, some of the additional information may be presented at thebeginning of the electronic message 110, such as before the email text108. Presenting the additional sender data before the email text 108 mayenable the user to review a sender's picture and biographical databefore spending time reading the message. For example, the user may notrecognize the sender's name but may recognize the face of the sender. Bydisplaying the face of the sender before the email text 108, thecomputing device may enable the user to quickly determine whether thesender is someone whose message should be read promptly, if at all. Ifneither the name nor the picture of the sender is familiar to the user,the user may review other biographical data before deciding whether toread the message. For instance, a user in the real estate business maybe interested in responding to an email from someone whose home value isabove a certain dollar threshold, as such an individual may represent avaluable business prospect.

In an aspect, the computing device may be configured to listbiographical data based on user customization or highlight particularpoints of biographical data that the user has previously indicated to beof interest. In this aspect, users reviewing electronic messages reviewbiographical information of importance to them before reading the textof the message. For example, a user involved in political activities mayscan or sort electronic messages based upon the party affiliation of thesender if such information is available.

In an aspect illustrated in FIG. 3, the computing device may beconfigured to highlight, rank and sort electronic messages pending in aninbox based on an importance value calculated based upon any additionalsender data retrieved from databases and the Internet, or a prior searchresults database, as well as information obtained or inferred from themessage body. For example, the computing device may be configured tosort the pending electronic messages based on an importance of themessage computed based on weighting factors applied to certainadditional sender data, such as the value of the senders' home, thesender's employer, previous email encounters, or the number of commonfriends. The computing device may receive user preferences forcustomizing the calculation of importance values, determine and storeweighting factors based on the user preferences, and apply thoseweighting factors in calculating an importance value as described above.

The computing device may further be configured to generate a graphicaluser interface (GUI) using the retrieved additional sender data toenable users to navigate through electronic messages 110 quickly andidentify important messages efficiently. For example, the computingdevice may be configured to arrange email messages 110 from most toleast important in a horizontal stack, such as from left to right. Forexample, the computing device may use sender images 104 a, 104 b, 104 c,104 d, 104 e retrieved from a database or the Internet to represent eachelectronic message 110, such as in a row or column of sender images.These sender images 104 a-104 e may be displayed in a stacked mannerfrom left to right premises or vice versa) with the correspondingelectronic message (i.e., image 104 a) displayed in a planar view below,with other images 104 b-104 e displayed in a stacked manner to the leftand right of the planar image 104 a. Other GUI layout designs may beimplemented based on user preferences, such as vertical alignments,circular or semicircular alignments (e.g., like a deck of cards spreadout on a table), etc.

In an aspect of such a GUI, the user may maneuver through email messages110 (i.e., the images 104 a-104 e) by using navigation arrows 116 a, 116b. The navigation arrow 116 a may allow the user to view the next emailmessages 110 to the left by clicking or touching on the arrow 116 a.Similarly, the navigation arrow 116 b displayed in the GUI may allow theuser to view the next email messages 110 to the right by clicking ortouching on the arrow 116 b.

The computing device may be further configured to assign a symbol 112 a,112 b, 112 c, 112 d to electronic messages based on the senderdemographic data, and include the symbol 112 a-112 d with the displayedimages 104 a-104 e representing the electronic messages to inform theuser about important aspects of electronic messages. For example, inFIG. 3 the email message corresponding to image 104 a includes a “$”symbol 112 a, which may be defined to mean that the home value of thesender of the email is above a certain amount (e.g., greater than$1,000,000). As another example, the email message corresponding toimage 104 b includes a stamp symbol 112 b, which may be defined tosignify that the sender is an approved contact. In an aspect, a user mayapprove contacts by designating them as such in the user's contactsdatabase. The computing device may be configured to retrieve userapproval designations from the contacts database and reflect the user'sratings in the email GUI. As another example, the electronic messagecorresponding to image 104 c includes a symbol “E” 112 c which maysignify that the sender is an employee of the user's company. As anotherexample, the electronic message corresponding to image 104 e includes asymbol “X” 112 d which may be defined to signify that the user haspreviously designated the sender is someone with whom the user does notwish to communicate. As another example, the electronic messagecorresponding to image 104 a includes a symbol “?” 112 e which may bedefined to signify that a question mark appears in the message body. Asshown next to image 104 d, multiple “?” symbols may be displayed tosignify that multiple question marks appear in the message body. Asanother example, the electronic message corresponding to image 104 fincludes a symbol circled dollar sign 112 g (or other symbol) which maybe defined to signify that a reference to currency appears in themessage body.

As the user scans email messages by maneuvering through the stack ofemail images using navigation arrows 116 a, 116 b, the computing devicemay be configured to display the email text 108 of the selected emailmessage 110 below, and the sender's biographical data 114 above, thestack of images 104 a-104 e. The computing device may be configured tohighlight the data associated with the symbol 112 in the biographicaldata 114. For example, when the user selects image 104 a, the computingdevice may display the biographical data 114 above the image 104 a andhighlight the important aspects of the sender's additional data to allowthe user to quickly decide whether to respond to the electronic message110.

FIG. 4 illustrates a GUI display including exemplary criteria based onwhich the computing device may sort received email messages 110.Importance criteria may include factors that may be important to users,such as beauty 302, network size 304, number of replies in the past 306,home value 308, age 310, email length 312, name of company 314, almamater 316, etc. Other criteria may also be used based on userpreferences, and those shown in FIG. 4 are for example purposes only.Further discussion of example importance criteria and methods forcalculating the corresponding importance values are provided below withreference to FIGS. 9-34.

For example, to enable highlighting, preferentially displaying orsorting emails based on the sender's beauty 302, the computing devicemay be configured to use a beauty assessing algorithm to calculate abeauty importance value for the sender based on the sender's pictures,such as by applying Fibonacci or Marquardt beauty masks to a digitalimage. The calculated beauty importance value may then be assigned tothe sender's electronic message, and used to highlight, preferentiallydisplay, or sort messages based upon the calculated beauty importancevalue. For example, electronic messages corresponding to images 104a-104 e may be sorted from most beautiful to least beautiful, or viceversa, based on their calculated beauty importance values. Furtherdetails regarding the calculation of an attractiveness importance factoris provided below with reference to FIG. 13

The computing device may be configured to allow the user to activatehighlighting, preferential display or sorting capabilities and adjustthe weighting applied to importance criteria (e.g., beauty importancevalues) by manipulating a GUI user input icon, such as by providingmoving a slide bars 318 that the user can move left to right (or viceversa) using a pointing device, such as a touch to a touchscreen or acomputer mouse. The slide bars 318 shown in the figures are forillustration purposes only, and other forms of GUI interface icons maybe used, including, for example, simulated dials, knobs, radio buttons,throttles, arrows, volume control buttons, etc.

The computing device may be further configured to display a stack ofpending electronic messages 110 by displaying an image 104 a-104 e ofthe sender, as described above, which may be sorted in order ofcalculated beauty importance values.

In an exemplary aspect, a slide bar or other form of GUI icon may beprovided to allow users to adjust importance factors according to theirpersonal preferences. For example, in such a GUI, the farther the usermoves a slide bar 318 to the right (or to the left), the more weight thecomputing device may give to a particular criterion for calculating animportance value for each electronic message, such as the senders'calculated beauty importance values. In the illustrated example, whenthe slide bar 318 is placed all the way to the right, thereby applying amaximum weighting factor to a particular importance criterion, thecomputing device may be configured to archive or eliminate (e.g., removeto trash or delete) those electronic messages with a low criterion valuecorresponding to that particular GUI icon. For example, if the GUI iconis adjust to assign a maximum weighting factor (e.g., moving a slide bar318 to the right limit) to a beauty importance value, the computingdevice may archive or eliminate electronic messages from senders withthe lowest beauty importance values (i.e., not beautiful) and only showthose electronic messages whose beauty importance values exceeding apredetermined threshold. This aspect may enable to highlight (such aswith a color, icon, boarder, etc. in a message display or list window)those electronic messages whose importance factors or importance valuesexceed a user-defined threshold. Further, this aspect may enable usersto preferentially display those electronic messages whose importancefactors or importance values exceed a user-defined threshold. Further,this aspect may enable users to sort electronic messages in order ofcalculated importance values, with the sorting order controlled by theuser adjusting weighting factors as described above. Thus, this aspectmay enable users to reduce the number of electronic messages 110 to bereviewed, and to sort messages based on a desired criteria.

FIG. 4 illustrates how the display of electronic messages correspondingto images 104 a-104 e may be adjusted to sort them based on theircalculated beauty importance values from most to least beautiful anddisplayed in a yearbook style GUI. Other GUI displays of electronicmessages may be used based on user preferences.

In an aspect illustrated in FIG. 4, the computing device may beconfigured to enable users to select electronic messages for reading andanswering by circling or otherwise highlighting the images representingthe messages within the GUI. Circling or otherwise highlighting imagesrepresenting electronic messages may be accomplished using a pointingdevice such as a finger tracing a gesture on a touch surface or acomputer mouse. In the example illustrated in FIG. 4, the user hasdesignated the first two electronic messages to be read by drawing acircle 320 around the two images 104 a, 104 b corresponding to theelectronic messages. The computing device may also be configured toallow the user to select several electronic messages by drawing severalseparate circles 320 around different electronic messages or imagescorresponding to the electronic messages. This may provide an intuitiveuser interface since users select electronic messages to read byselecting images of the sender.

In the example illustrated in FIG. 5, a user has manipulated the slidebars 318 a-318 h for adjusting relative weighting factors assigned todifferent types of importance criteria to cause the computing device tohighlight, preferentially display, or sort electronic messages in theinbox according to a composite importance factor determined by theuser's selections. In this example, the user has positioned the slidebars 318 a-318 h so that the computing device will highlight,preferentially display, or sort electronic messages based on importancevalue calculated from a combination of the beauty importance value 302,the sender's network size 304, and the number of replies made by theuser to the particular sender in the past 306. Since the slide bars 318a-318 h for criteria associated with home value, age, email length,company and alma mater are positioned at the left hand limit, thesecriteria will be given no weight during the calculation of importancevalues in this example. In this example, the computing device willmultiply weighting factors determined by each of the slide bar 318 a-318h positions times the beauty importance value, the network size, and thenumber of replies in the past criteria, and sum the results to arrive ata single, amalgamated importance value that can be used to highlight,preferentially display, or sort the electronic messages in the user'sinbox. Thus, the various aspects enable users to easily develop uniquerating and sorting algorithms to be applied to their own electronicmessages based on their own preferences and priorities.

Instead of or in addition to sorting electronic messages 110 based on anumber of replies in the past 306, the computing device may beconfigured to show a pending message counter 502 a-502 d in associationwith an electronic message 110 or image 104 e-104 f representing anelectronic message. The pending message counter 502 a-502 d may indicatethe number of unanswered electronic messages from the sender of thedisplayed electronic message that are present in the user's inbox.Providing such a counter may enable a user to decide whether to lead anelectronic message from the sender. For example, the pending messagecounter 502 a displayed next to image 104 a indicates that there is oneother unanswered electronic message from this sender is pending in theinbox, while the pending message counter 502 d displayed next to image104 f indicates that there are 15 other unanswered messages from thissender in the user's inbox. If all messages from a sender are repliedto, no email counter 502 may be displayed, such as shown by image 104 c.

FIG. 6A illustrates an aspect method 500 for retrieving additionalsender data and using that data to adjust a display of an electronicmessage. In method 500 at block 501, the computing device may receiveand parse an electronic message to obtain an identity of the messagesender. In the case of email messages, the process may involve parsingthe message to obtain the sender data field. In the case of SMS or MMSmessages, the process may involve parsing the message to obtain thesender telephone number and using the sender telephone number as alookup criterion for a query of a database (e.g., 80 contact databasestored within the computing device) or an Internet accessible database(e.g., 411.com or white pages.com) to obtain a name associated with thetelephone number. Using the obtained message sender identity informationas a search criterion, the computing device may search a database or theInternet for additional sender data at block 504. At block 506, thecomputing device may retrieve and store additional sender data. Forexample, the retrieved additional sender data may be stored in aprevious search results database maintained on a data store accessibleto or within the computing device. At block 508, the computing devicemay select a portion of the additional sender data for display with, orused for sorting of, electronic messages based on user preferences. Thedata selected may be drawn from the previous search results database.For example, the computing device may be configured to search theInternet for (or select among information obtained from the Internet)images of the sender of each electronic message as well as each sender'shome value. Rather than storing the additional sender data received fromthe Internet, blocks 506 and 508 may be combined so that the computingdevice performs targeted searches for just the types of informationuseful for calculating importance values for electronic messagesaccording to the user's preferences. In an aspect, the computing devicemay access weighting factors associated with importance criteria andperform searches only for those criteria for which the correspondingweighting factor exceeds a minimum threshold. In this manner, thesearching effort may be limited to information that is likely to have asignificant impact on the priority or importance value assigned to anelectronic message.

Once additional sender data is retrieved, stored and selected, thecomputing device may adjust display of the electronic message at block510. For example, the computing device may display an image of thesender and the sender's home value along with the electronic message. Asanother example, the computing device may highlight the display of anelectronic message, preferentially display the electronic message,and/or sort the electronic message along with other messages in aninbox.

Typically, users receive electronic messages from a limited number ofacquaintances, and only rarely receive e-mails from someone they havenot corresponded with in the past. Therefore, the search for additionaldata on senders described above with reference to FIG. 6A may beperformed only a first time that a message is received from a particularsender if the search results are stored on a database accessible to themessage application (e.g., user's personal computer or an email server).An example method 550 for obtaining additional user information whensuch a database of prior search results is available is illustrated inFIG. 6B. In method 550 at block 501, the computing device may receiveand parse an electronic message to obtain an identity of the messagesender, such as described above with reference to FIG. 6A. Indetermination block 552, the computing device may compare the identityof the message sender to a list or database of senders for whomadditional data searches have been conducted in the past to determine ifthe sender is new (i.e., a person for whom an additional data searchesnot been conducted. If the message sender is not a new sender (i.e.,determination block 552=“no”), the computing device may access adatabase of additional sender data populated from previous searches inblock 554. Such additional sender data obtained from a previous searchdatabase may then be used for adjusting the display of messages, such asby sorting, ranking and/or displaying messages according to the variousaspects in block 570.

If the message sender is new to the user (i.e., determination block552=“yes”), the computing device may search an external database and/orthe Internet for additional sender data at block 556. Such searching foradditional sender data may be accomplished using various methodsdescribed herein. At block 558, the computing device may retrieve andstore the obtained additional sender data.

Since there is a great deal of variability in search results, as well asopportunities for confusion or miss identification of individuals indatabase searches, the various aspects may include a learning modulewhich can learn from user feedback on search results to conduct bettersearches in the future. To this end, the computing device may displaysome or all of the additional sender data retrieved from externaldatabases to the user for evaluation in block 560. In block 562, theuser may provide feedback to the computing device, such as indicatingwhether the search has found the proper individual or relevantinformation. Such feedback may be provided in a variety of userinterface mechanisms such as may be implemented in a graphical userinterface. As part of presenting database search results to the user,the computing device may present a number of alternative search resultsand provide a graphical user interface to enable the user to selectthose results which are most relevant to the particular message senderand/or the user. In determination block 564, the computing device maydetermine from the user input whether the obtained additional data isfor the correct sender or otherwise is proper for use in sorting,ranking and displaying electronic messages. If the user feedbackindicates that the information is not for the correct sender or isotherwise irrelevant or not useful (i.e., determination block 564=“no”),the computing device may use the user feedback to modify the searchcriteria or search results selection rules in order to do a better jobof obtaining relevant information the next time the searches conducted.The computing device may also be performed the search of externaldatabases by returning to block 556. If the user feedback indicates thatthe obtained additional information is satisfactory (i.e., determinationblock 564=“yes”), the computing device may store the search results inthe database of additional sender data at block 568, and use theadditional sender data obtained in the search for storing, rankingand/or displaying messages at block 570.

The basic process of obtaining additional information regarding thesender described above and shown in FIGS. 6A and 6B may be applied inthe various aspects to obtain a wide range of information about thesender, the sender's affiliations, and the user's relationship with thesender that may be used to highlight, preferentially display, sort orotherwise adjust the display of electronic messages. In particular, thedata look up processes may be implemented as part of the processes forcalculating message importance values described below with reference toFIGS. 9-34.

FIG. 7 illustrates an aspect method 600 for configuring the computingdevice to customize the presentation of additional sender data presentedin conjunction with electronic messages. By allowing users to customizethe searching criteria used to obtain additional data about electronicmessage senders, the computing device may be configured to only searchfor sender data that is relevant to the user. In method 600 at block602, the computing device may receive a user's request to customize datasearching criteria. At block 604, the computing device may display adata searching customization GUI, and receive user customizationcriteria selection inputs at block 606. The computing device mayimplement the user's customization selection by storing the user'sinputs or weighting factors determined based upon the user's inputs inmemory at block 608. The user selections may then be used in subsequentimportance value calculation algorithms and in data searching processesas described above.

FIG. 8A illustrates an aspect method 700 for sorting electronic messagesbased on a user's selected importance criteria. In method 700 at block501, the computing device may receive and parse through an electronicmessage to obtain sender identity information as described above withreference to FIG. 6. At block 504, the computing device may search adatabase or the Internet for additional sender data using the identityof the sender obtained from the electronic message. At block 506, thecomputing device may retrieve and store additional sender data. At block702, the computing device may evaluate the additional informationobtained in the search of databases and/or the Internet to assign theobtained data to various criteria. For example, a search on a sendername may result in a variety of different information sources (e.g.,news articles, government records, public database results, etc.), eachof which may include information that is relevant to multiple searchcriteria. As part of this process in block 702, the computing device mayparse through received information to identify the portions relevant touser selected search criteria and then assign the selected portions tothe criteria to which they are relevant.

At block 704, the computing device may apply an algorithm to theadditional sender data to generate an importance value, and assign theimportance value to the electronic message at block 708. As discussedherein, the algorithm applied to the additional sender data will dependupon the search criteria to which it's been assigned, and the importancevalue may be any factor determined from the electronic message or datagathered from databases or the Internet, or a calculated value obtainedby applying an algorithm to some or all of the additional data obtainedregarding the sender. For example, the computing device may apply abeauty calculation algorithm to images of a message sender obtained fromdatabases and/or the Internet to calculate a beauty importance value.Such a calculated beauty importance value may then be assigned to theelectronic message. The calculated beauty importance value can then beused to order the electronic message with respect to other electronicmessages within the inbox, or used as part of calculating an amalgamatedimportance value. In an aspect, when more than one importance criteriaare used by the user to highlight, preferentially display, or sortelectronic messages, the computing device may be configured to calculatean average or amalgamated importance value using all the calculated animportance values.

In method 700 at block 710, the computing device may display a promptrequesting a user input or selection of one or more importance criteriaas well as whether messages should be sorted. At block 712, thecomputing device may receive user inputs in response to the displayedprompt, and then highlight, preferentially display, or sort electronicmessages in the user's inbox based on importance criteria selectioninputs received from the user at block 714. The computing device maythen display the sorted electronic messages in conjunction withadditional data gathered about the sender at block 716.

FIG. 8B illustrates another aspect method 750 for sorting electronicmessages based on a user's selected importance criteria. In method 750at block 752, the computing device may receive and parse through anelectronic message to obtain sender identity information along withcontent criteria data (e.g., number of “?” and “!” marks, languageusage, keywords, key names, etc.) as described above. At block 754, thecomputing device may search the prior search results database forpreviously stored additional information regarding the sender. Atdetermination block 756, the computing device may determine whether anyadditional information regarding the sender has been saved in the priorsearch results database.

If no prior search results were located in the prior search resultsdatabase (i.e., determination block 756=“No”), the computing device mayobtain the criteria weighting factors stored in memory that are used inan importance value algorithm at block 758. At block 760, the computingdevice may search one or more attached databases (i.e., local databasesthat do not require accessing the Internet) using the identity of thesender obtained from the electronic message for additional sender datathat is related to importance criteria for which a weighting factor isgreater than a first minimum threshold “T1.” At block 762, the computingdevice may search the Internet for additional sender data using theidentity of the sender obtained from the electronic message forinformation that is related to importance criteria for which a weightingfactor is greater than a second minimum threshold “T2.” Conductingsearches of database and the Internet only if the weighting factor isgreater than a threshold may enable the computing device to conservenetwork access time and processing resources, since there is littlevalue in gathering information that will not be used for or will havelittle impact on the calculation of a priority or importance value.Since the processing time and delay associated with accessing localdatabases may be less than that required to access Internet databases,the first threshold “T1” may be set to a small value, such as zero,while the second threshold “T2” is set to a larger value, such assomething larger than zero. At block 764, the computing device may storethe additional sender data obtained from the database and/or Internetsearches in the prior search results database.

Once the additional data has been stored in the prior search resultsdatabase at block 764 or prior search results are obtained from theprior search results database (i.e., determination block 756=“Yes”), thecomputing device may evaluate the additional information obtained in thesearch of databases and/or the Internet to assign the obtained data tovarious criteria at block 702. As part of this process in block 702, thecomputing device may parse through received information to identify theportions relevant to user selected search criteria and then assign theselected portions to the criteria to which they are relevant.

At block 704, the computing device may apply an algorithm to theadditional sender data to generate an importance value, and assign theimportance value to the electronic message at block 708 in a mannersimilar to that described above with reference to FIG. 8A. At block 710,the computing device may display a prompt requesting a user input orselection of one or more importance criteria as well as whether messagesshould be sorted. At block 712, the computing device may receive userinputs in response to the displayed prompt, and then highlight,preferentially display, or sort electronic messages in the user's inboxbased on importance criteria selection inputs received from the user atblock 714. The computing device may then display the sorted electronicmessages in conjunction with additional data gathered about the senderat block 716.

As discussed above, information about the message sender and the messageitself may be used to highlight, rank or sort electronic messages in amanner that users can define and tailor to their individual tastes andpreferences. In an aspect, such highlighting, ranking or sorting may beaccomplished using a weighted sum or average of importance valuescalculated for each of a plurality of importance criteria, with theweighting factors and the specific criteria selected by users, such asby means of a GUI interface as described above with reference to FIGS. 4and 5. An example of an importance value formula that may be applied isgiven in Eq. 1 below. The nature and methods for calculating each of theexample importance criteria values listed in Eq. 1 are described belowwith reference to FIGS. 9-34. The respective weighting factors W1through W26 are values that users may set or determine (such as by meansof a GUI) in order to customize the highlighting, preferential displayor sorting behavior of the message database.

SortValue(e)=Review_time(e)*W1+ExternalOrInternal(e)*W2+HowOftenHaveIReplied(e)*W3+PoliticalParty(e)*W4+Attractiveness(e)W5+Gender(e)*W6+DateSent(e)*W7+Preapproved(e)*W8+Keywords(e)*W9+SentJustToMe(e)*W10+CompanyCareAbout(e)*W11+Alum(e)*W12+FamilyMember(e)*W13+EstimatedWealth(e)*W14+Popularity(e)*W15+FriendsInCommon(e)*W16+WellTravelled?(e)*W17+NumberOf_?_Marks(e)*W18+NumberOf_!_Marks(e)*W19+FriendlinessOfMessage*W20+Age(e)*W21+NationalOrigin(e)*W22+ColorOfSkin(e)*W23+ReadButNotRepliedTo(e)*W24+ReceivedButNotOpened(e)*W25+DistanceFromCompany(e)*W26.  Eq.1

In another example aspect, the importance value may be determinedthrough an algorithm featuring a tree of conditional statements thatassign or modify the importance value when each condition is satisfiedby information in the message or obtained about the user. Such adecision tree of “if-then” statements may be configurable by users, suchas by assigning different values or computations to be applied toimportance value in response to particular criteria. Thus, a GUIinterface similar to those described below with reference to FIGS. 4 and5 may also be used to enable users to configure a decision tree of“if-then” statements for determining importance factors.

In another example aspect, the importance value may be calculated usingmathematical operators other than simple multiplication (i.e., linearequations) as shown in Eq. 1. For example, for importance criteria basedupon information that may be quantized, such as in a range of realnumber from −1 to 1, a suitable weighting factor may be any functionthat maps that range in a well-behaved fashion. One example of such afunction is a step function which applies a “0” importance value forfactor values below a threshold within the range, and “1” importancevalue for factor values above the threshold. In such a formula, thethreshold may be varied, such as in response to user inputs, so as toadjust the calculation of the importance value and the sorting behaviorof the system. Another example of such a function is a quadraticequation, such as a parabola centered within the range. In such aformula, the coefficients of the quadratic equation may be varied, suchas in response to user inputs, so as to adjust the calculation of theimportance value and the sorting behavior of the system. Another exampleof such a function is a cubic equation with an X axis intercept withinthe range. In such a formula, the coefficients of the cubic equation maybe varied, such as in response to user inputs, so as to adjust thecalculation of the importance value and the sorting behavior of thesystem.

One criterion that may be useful to busy people trying to sort andprioritize electronic messages may be the time it will take them toreview, read or view the content of the message or linked to the message(Review_time). For example, users may wish to review brief messagesfirst or during a period when they have a small amount of time forreviewing electronic messages. The length of the message, such as thenumber of words in the message, maybe an indicator of how long it wouldtake the user to read the message. However, some short messages may havelinks to other content, such as a YouTube video, a news clip, or awebpage article that will require more time to review. To enable thecomputing device to prioritize or sort electronic messages based uponthe total time it would take a user to review them, the computing devicemay implement processes similar to those illustrated in method 800 shownin FIG. 9. In method 800 at block 802, the computing device may parse anelectronic message to determine its length (e.g., the number of words orcharacters included in the message body) and determine whether there areany links to other content that a user might be expected to review. Atblock 804, the computing device may access any content links (e.g.hyperlinks to documents, video clips, webpages, etc.) to determine theduration of any corresponding video clip or length of any document. Suchduration or document length information may be included within themetadata accessible on the site accessed via the embedded link or byevaluating the file size of a linked video clip or document. At block806, the computing device may use the information regarding the lengthof the electronic message and any information regarding a length orduration of linked content to calculate a Review_time factor (i.e., ameasure of the time that it may take the user to review the message andcontent). At block 808, the computed the time factor may then be used asan input to an importance value algorithm such as Eq. 1 as describedabove.

Another criterion may be whether the message is from a sender who isinternal or external to the user's company (ExternalOrInternal). Amethod 1000 for determining this factor is illustrated in FIG. 10. Inmethod 1000 at block 1002, the computing device may parse an electronicmessage to determine the originating Internet Protocol (IP) address of asender's computer. At block 1004, the computing device may determinewhether the message was received is from an internal or external source,such as by determining whether the IP address belongs to a company otherthan the user's company. At block 1006, the computing device maycalculate an ExternalOrInternal factor based on the sender's computer IPaddress. For example, the factor may be set to 1 if the message is froman external sender and set to 2 if an internal sender. Further, a rangeof values may be set based on address domain names, such as anothervalue for messages from government senders (e.g., “.gov” domains) and afurther number for messages sent from non-commercial organizations(e.g., “.org” domains). The values assigned to external and internalmessages may be defined by the user according to the user's preferences.At block 1008, the computed InternalOrExternal factor may then be usedas an input to an importance value algorithm such as Eq.1 as describedabove.

In a further aspect, the computing device may implement processessimilar to those in method 1100 illustrated in FIG. 11 to determine howoften the user has replied to the sender's emails(HowOftenHaveIReplied). In method 1100 at block 1002, the computingdevice may parse electronic message to determine the identity of thesender. At block 1004, the computing device may access a database, suchas a local database maintained by the user's mail system, to determinehow many times the user has responded to messages from the sender. Atblock 1106, the computing device may calculate a HowOftenHaveIRepliedfactor based on the data received from the database. At block 1108, thecomputed HowOftenHaveIReplied factor may be used as an input to animportance value algorithm such as Eq.1 as described above.

In a further aspect, the computing device may implement processessimilar to those in method 1200 illustrated in FIG. 12 to determine thepolitical affiliation of the sender (PoliticalParty). In method 1200 atblock 1202, the computing device may parse the electronic message todetermine the identity of the sender. At block 1204, the computingdevice may access a database or the Internet to determine the politicalaffiliation of the sender. For example, the computing device may beconfigured to access websites such as www.campaignmoney.com to determinethe amount and types of donations paid to a political party by thesender. Some Internet websites provide a confidence level measureregarding the data that is returned in response to a particular searchresults. For example, domania.com may provide a confidence value on ahome value estimate provided for particular address. To ensure that onlyrelatively high confidence additional sender data is used in the processof sorting and ranking electronic messages, the computing device maycompare the returned confidence level in the sender's political party toa minimum threshold confidence level at determination block 1206. If theconfidence level of the additional sender data exceeds the thresholdvalue (i.e., determination block 1206=“yes”), the computing device maycalculate a PoliticalParty factor based on the sender's political partyaffiliations, at block 1208. For example, the value 1 may be assigned ifthe sender is a Democrat, the value 2 may be assigned if the sender is aRepublican, etc. The values assigned to respective political parties maybe defined by the user according to the user's preferences. At block1210, the computed PoliticalParty factor may be used as an input to animportance value algorithm such as Eq.1 as described above. If thereturned to the confidence level does not meet the minimum thresholdconfidence level (i.e., determination block 1206=“no”), the computingdevice may ignore the received additional sender data at block 1212rather than use questionable data for sorting or ranking electronicmessages. Instead of ignoring the received additional sender data, thecomputing device may repeat the process of conducting a search forsender data on a database and/or the Internet.

In a further aspect, the computing device may implement processessimilar to those in method 1300 illustrated in FIG. 13 to determine theattractiveness of the sender (Attractiveness). In method 1300 at block1302, the computing device may parse electronic message to determine theidentity of the sender. At block 1304, the computing device may accessand search a database or the Internet using the sender's identityinformation to find pictures of the sender. As mentioned above, someInternet websites provide a confidence level measure regarding the datathat is returned in response to a particular search results. Forexample, domania.com may provide a confidence value on a home valueestimate provided for particular address. As another example, GoogleImages may provide a confidence level estimate regarding an imagereturned in response to a search on an individual's name (for example,the confidence level on a photograph may be 5% for “John Smith”, but 95%for “Barack Obama”). To ensure that only relatively high confidenceadditional sender data is used in the process of sorting and rankingelectronic messages, the computing device may compare the returnedconfidence level for the returned images to a minimum thresholdconfidence level at determination block 1306. If the confidence level ofthe additional sender data exceeds the threshold value (i.e.,determination block 1306=“yes”), the computing device may calculate anattractiveness factor based on the pictures found, at block 1308. Forexample, the computing device may use the Fibonacci or Marquardt beautymask (at http://goldennumeber.net/beauty.htm) to calculate anattractiveness factor. At block 1310, the computed Attractiveness factormay be used as an input to an importance value algorithm such as Eq.1 asdescribed above. If the returned to the confidence level does not meetthe minimum threshold confidence level (i.e., determination block1306=“no”), the computing device may ignore the received additionalsender data at block 1312 rather than use questionable data for sortingor ranking electronic messages.

In a further aspect, the computing device may implement processessimilar to those in method 1400 illustrated in FIG. 14 to determine thegender of the sender (Gender). In method 1400 at block 1402, thecomputing device may parse electronic message to determine the identityof the sender. At block 1404, the computing device may access a databaseof names and related genders to identify the sender's gender based onthe sender's name. At block 1406, the computing device may calculate aGender factor based on the sender's gender. For example, the value 1 maybe assigned if the sender is a woman, the value 2 may be assigned if thesender is a man. The values assigned to the genders may be defined bythe user according to the user's preferences. At block 1408, thecomputed Gender factor may be used as input to an importance valuealgorithm such as Eq.1 as described above.

In a further aspect, the computing device may implement processessimilar to those in method 1500 illustrated in FIG. 15 to determine thedate the email was sent (DateSent). In method 1500 at block 1502, thecomputing device may parse electronic message to determine the date theemail was sent. At block 1504, the computing device may calculate aDataSent factor based on the date the electronic message was sent. Forexample, the computing device may calculate the number of days betweenthe date the message was sent and the present date and use that numberas the DateSent value. Other calculations may be used as well, such asnon-linear equations. At block 1506, the computed DateSent factor may beused as input to an importance value algorithm such as Eq.1 as describedabove.

In a further aspect, the computing device may implement processessimilar to those in method 1600 illustrated in FIG. 16 to determinewhether the sender is part of a preapproved group of contacts(Preapproved). In method 1600 at block 1602, the computing device mayparse electronic message to determine the identity of the sender. Atblock 1604, the computing device may access a database, such as acontact database, to determine whether the sender is previouslypre-approved as a preferred sender. A sender may be preapproved usingdifferent methods. For example, a user may use the contacts database toselect senders from whom the user would like to receive electronicmessages. The user may preapprove the selected senders so that receivedelectronic messages from the preapproved senders have priority overother electronic messages based on the importance value assigned to theelectronic message as described below. At block 1606, the computingdevice may calculate a Preapproved factor based on the preapprovedstatus of the sender. For example, the computing device may assign avalue of 1 for preapproved sender messages and a value of 0 fornon-preapproved sender messages. At block 1608, the computed Preapprovedfactor may be used as input to an importance value algorithm such asEq.1 as described above.

In a further aspect, the computing device may implement processessimilar to those in method 1700 illustrated in FIG. 17 to determine animportance value for the electronic message by identifying keywords usedin the body of the received electronic message (Keywords). In method1700 at block 1702, the computing device may parse the electronicmessage to identify keywords in the body of the message. For example,the computing device may be configured to determine how many times theword “call me” appears in the body of the message. At block 1704, thecomputing device may calculate a Keywords factor based on the numberand/or particular keywords found in the body of the message. At block1706, the computed Keyword factor may be used as input to an importancevalue algorithm such as Eq.1 as described above.

In a further aspect, the computing device may implement processessimilar to those in method 1800 illustrated in FIG. 18 to determinewhether an electronic message was sent to a list of recipients or justthe user (SentJustToMe). In method 1800 at block 1802, the computingdevice may parse the electronic message to identify the recipients ofthe electronic message. At block 1804, the computing device maycalculate a SentJustToMe factor based on the list of recipients of theelectronic message. At block 1806, the computed SentJustToMe factor maybe used as input to an importance value algorithm such as Eq.1 asdescribed above.

In a further aspect, the computing device may implement processessimilar to those in method 1900 illustrated in FIG. 19 to determinewhether the electronic message was sent from a sender at a company thatthe user has indicated to be of special interest (CompanyCareAbout).This may be achieved by parsing the sender's email address andidentifying the company from which the email is being sent. In method1900 at block 1902, the computing device may parse the electronicmessage to determine the identity of the sender's company. At block1904, the computing device may calculate a CompanyCareAbout factor basedon the sender's company, such as by comparing the sender's company to alist of companies. Such a look up table of companies may include afactor value to assign to the CompanyCareAbout value. At block 1906, thecomputed CompanyCareAbout factor may be used as input to an importancevalue algorithm such as Eq.1 as described above.

In a further aspect, the computing device may implement processessimilar to those in method 2000 illustrated in FIG. 20 to determine thealma mater of the sender (Alum). In method 2000 at block 2002, thecomputing device may parse the electronic message to determine theidentity of the sender. In block 2004, the computing device may accessand search a database or the Internet to determine the sender's almamater. As mentioned above, some Internet websites provide a confidencelevel measure regarding the data that is returned in response to aparticular search results. To ensure that only relatively highconfidence additional sender data is used in the process of sorting andranking electronic messages, the computing device may compare thereturned confidence level for the returned sender's alma mater to aminimum threshold confidence level at determination block 2006. If theconfidence level of the additional sender data exceeds the thresholdvalue (i.e., determination block 2006=“yes”), the computing device maycalculate an Alum factor based on the alma mater found during the searchof the database or the Internet at block 2008. For example, thecomputing device may compare the sender's alma mater to a list ofschools. Such a look up table of alma maters may include a factor valuefor each set by the user. At block 2010, the computed Alum factor may beused as input to an importance value algorithm such as Eq.1 as describedabove. If the returned to the confidence level does not meet the minimumthreshold confidence level (i.e., determination block 2006=“no”), thecomputing device may ignore the received additional sender data at block2012 rather than use questionable data for sorting or ranking electronicmessages.

In a further aspect, the computing device may implement processessimilar to those in method 2100 illustrated in FIG. 21 to determine thealma mater of the sender (FamilyMember). In method 2100 at block 2102,the computing device may parse the electronic message to determine theidentity of the sender. At block 2104, the computing device may access acontacts database to determine whether the sender is a family member.This may be achieved by using different methods. For example, the usermay designate family affiliated persons in the contacts database. Thus,when the computing device accesses the contacts database, it may use thefamily affiliation designations to determine whether the sender isfamily. At block 2106, the computing device may calculate a FamilyMemberfactor based on the family affiliations. For example, the databaseidentifying family members may include a factor value for eachindividual family member (such as greater values for immediate familymembers and lesser values for distant relatives or in-laws). At block2108, the computed FamilyMember factor may be used as input to animportance value algorithm such as Eq.1 as described above.

In a further aspect, the computing device may implement processessimilar to those in method 2200 illustrated in FIG. 22 to determine thewealth of the sender. In method 2200 at block 2202, the computing devicemay parse the electronic message to determine identity of the sender. Atblock 2204, the computing device may access a database or the Internetto determine wealth based on the identity of the sender. For example, toestimate the wealth of a sender, the computing device may accesswebsites such as Domania at www.domania.com or the United States Patent& Trademark Office at www.uspto.gov to determine whether the sender ownsreal or intellectual property. At block 2206, the computing device maycalculate an EstimatedWealth factor based on the wealth of the sender.At block 2208, the computed EstimatedWealth factor may be used as inputto an importance value algorithm such as Eq.1 as described above.

In a further aspect, the computing device may implement processessimilar to those in method 2300 illustrated in FIG. 23 to determine thepopularity of the sender (Popularity). In method 2300 at block 2302, thecomputing device may parse the electronic message to determine theidentity of the sender. At block 2304, the computing device may access asocial networking website via the Internet to determine the popularityof the sender. The popularity of the sender may be measured based onseveral methods. For example, the measure of popularity may be based onthe number of connections or friends a sender has as shown on thesender's profile on a social network website. The more friends thesender has, the more popular the sender may be, or vice versa. At block2306, the computing device may calculate a Popularity factor, such asbased on the connections of the sender on social websites. At block2308, the computed Popularity factor may be used as input to animportance value algorithm such as Eq.1 as described above.

In a further aspect, the computing device may implement processessimilar to those in method 2400 illustrated in FIG. 24 to determine howmany common friends or acquaintances the user shares with the sender(FriendsInCommon). In method 2400 at block 2402, the computing devicemay parse the electronic message to determine the identity of thesender. At block 2404, the computing device may access social websitesusing the Internet to identify and determine the friends and connectionsthat the user and the sender have in common, such as by comparingconnection names to the user's contacts database. At block 2406, thecomputing device may calculate a FriendsInCommon factor based on theconnections data retrieved from the sender's social website. At block2408, the computed FriendsInCommon factor may be used as input to animportance value algorithm such as Eq.1 as described above.

In a further aspect, the computing device may implement processessimilar to those in method 2500 illustrated in FIG. 25 to determine theextent to which the sender has travel experience (WellTravelled?). Inmethod 2500 at block 2502, the computing device may parse electronicmessage to determine the identity of the sender. At block 2504, thecomputing device may access a databases or the Internet to determinetravel history of the sender. For example, the computing device mayaccess websites such as Flicker or other public picture sharing sitesvia the Internet and identify pictures associated with the sender byusing the sender's name. The computer device may then parse the GPS tagin the EXIF header of the JPEG file to determine the location where thepicture was taken. The computing device may then determine whether thesender is well traveled. As mentioned above, some Internet websitesprovide a confidence level measure regarding the data that is returnedin response to a particular search results. To ensure that onlyrelatively high confidence additional sender data is used in the processof sorting and ranking electronic messages, the computing device maycompare the returned confidence level for the returned sender's almamater to a minimum threshold confidence level at determination block2506. If the confidence level of the additional sender data exceeds thethreshold value (i.e., determination block 2506=“yes”), the computingdevice may calculate a required WellTravelled? factor based on thesender's travel history data at block 2508. At block 2510, the computedWellTravelled? factor may be used as input to an importance valuealgorithm such as Eq.1 as described above. If the returned to theconfidence level does not meet the minimum threshold confidence level(i.e., determination block 2506=“no”), the computing device may ignorethe received additional sender data at block 2512 rather than usequestionable data for sorting or ranking electronic messages.

In a further aspect, the computing device may implement processessimilar to those in method 2600 illustrated in FIG. 26 to determinewhether the electronic message is asking a question (NumberOf_?_Marks).In method 2600 at block 2602, the computing device may parse theelectronic message to determine the number of times “?” appears in themessage. At block 2604, the computing device may calculate aNumberOf_?_Marks factor based on the number of “?” in the electronicmessage. At block 2606, the computed NumberOf_?_Marks factor may be usedas input to an importance value algorithm such as Eq.1 as describedabove.

In a further aspect as illustrated in FIG. 27, the computing device mayimplement processes similar to those illustrated in method 2700 todetermine the type of punctuation used in the text of an electronicmessage received from a sender to determine if there is a sense ofurgency (NumberOf_!_Marks). In method 2700 at block 2702, the computingdevice may parse the electronic message to determine the number of times“!” appears the electronic message. At block 2604, the computing devicemay calculate a NumberOf_!_Marks factor based on the number of “!” inthe electronic message. At block 2606, the computed NumberOf_!_Marksfactor may be used as input to an importance value algorithm such asEq.1 as described above.

In a further aspect, the computing device may implement processessimilar to those in method 2800 illustrated in FIG. 28 to determine thetype of words (e.g., LOL, MOG) used in the text of an electronic messageto determine how friendly the message is (FriendlinessOfMessage). Inmethod 2800 at block 2802, the computing device may parse the electronicmessage to determine the literary tone in which the electronic messageis drafted. At block 2804, the computing device may calculate aFriendlinessOfMessage factor based on the types of words used in theelectronic message. For example, the computer device may determine thatthe tone of an electronic message is friendly if the sender employsinformal words such as “LOL” (laugh-out-laud) in the body of theelectronic message. At block 2806, the computed FriendlinessOfMessagefactor may be used as input to an importance value algorithm such asEq.1 as described above.

In a further aspect, the computing device may implement processessimilar to those in method 2900 illustrated in FIG. 29 to determine theage of the sender (Age). In method 2900 at block 2902, the computingdevice may parse the electronic message to determine the identity of thesender. At block 2904, the computing device may access a database or theInternet to determine the age of the sender. At block 2906, thecomputing device may calculate an Age factor based on the sender's age.At block 2908, the computed Age factor may be used as input to animportance value algorithm such as Eq.1 as described above.

In a further aspect, the computing device may implement processessimilar to those in method 3000 illustrated in FIG. 30 to determine theage of the sender (NationalOrigin). In method 3000 at block 3002, thecomputing device may parse the electronic message to determine theidentity of the sender. At block 3004, the computing device may access adatabase of names or the Internet to determine the national origin ofthe sender based on the sender's name. For example, names and thenational origin of the name may be stored in a name database. At block3006, the computing device may calculate a NationalOrigin factor basedon the determined national origin. For example, the computing device maycompare the sender's national origin to a list of nationalities in atable lookup to obtain a value to apply to the NationalOrigin factor.Such a look up table of nationalities may include factor values set bythe user. At block 3008, the computed National Origin factor may be usedas input to an importance value algorithm such as Eq.1 as describedabove.

In a further aspect, the computing device may implement processessimilar to those in method 3100 illustrated in FIG. 31 to determine thesender's skin color (ColorOfSkin). In method 3100 at block 3102, thecomputing device may parse the electronic message to determine theidentity of the sender. At block 3104, the computing device may access adatabase or the Internet to find a picture of the sender based on theidentity of the sender. At block 3106, the computing device maydetermine the sender's skin color. For example, the computing device maydetermine the sender's skin tone by using Hue Saturation Values, wherevalue (i.e., brightness) is between 0 and 255, with 0 being very darkskin, and 255 being Albino. At block 3108, the computing device maycalculate a ColorOfSkin factor based on the sender's skin color tone. Atblock 3110, the computed ColorOfSkin factor may be used as input to animportance value algorithm like such as Eq.1 as described above.

In a further aspect, the computing device may implement processessimilar to those in method 3200 illustrated in FIG. 32 to determinewhether in the past the user has read messages from the sender but notreplied (ReadButNotRepliedTo). In method 3200 at block 3202, thecomputing device may parse the electronic message to determine theidentity of the sender. At block 3204, the computing device may access adatabase to determine how many times the sender's electronic mail wasread but not replied to. At block 3206, the computing device maycalculate a ReadButNotRepliedTo factor based on the results retrievedfrom the database. At block 3208, the computed ReadButNotRepliedTofactor may be used as input to an importance value algorithm such asEq.1 as described above.

In a further aspect, the computing device may implement processessimilar to those in method 3300 illustrated in FIG. 33 to determine howmany times electronic messages have been received from the sender butnever opened by the user (ReceivedButNotOpened). In method 3300 at block3302, the computing device may parse the electronic message to determinethe identity of the sender. At block 3304, the computing device mayaccess a database to determine how many times electronic mails werereceived but never opened. At block 3406, the computing device maycalculate a ReceivedButNotOpened factor based on the data retrieved fromthe database. At block 3308, the computed ReceivedButNotOpened factormay be used as input to an importance value algorithm such as Eq.1 asdescribed above.

In a further aspect, the computing device may implement processessimilar to those in method 3400 illustrated in FIG. 34 to determine thedistance to the sender's company (DistanceFromCompany). Such geographicdistance may be of interest to user's whose business is local and whohave little interaction with companies located more than a few hundredmiles away, for example. In method 3400 at block 3402, the computingdevice may parse the electronic message to determine the identity of thesender's company. At block 3404, the computing device may access acompany directory database or the Internet to determine the physicaladdress of the sender's company. At block 3406, the computing device mayaccess a map application (e.g., Google Maps®) to determine the distancebetween the sender's and the user's companies based on the addresses. Atblock 3408, the computing device may calculate a DistanceFromCompanyfactor based on the GPS data. At block 3410, the computedDistanceFromCompany factor may be used as input to an importance valuealgorithm such as Eq.1 as described above.

Having calculated the various factor values and used them as inputs toobtain an overall importance value for each message, the messages maythen be ranked or sorted for presentation to the user as describedabove.

In a further aspect, importance values and determinations to highlight,preferentially display, sort or delete electronic messages may be madebased upon a subset of the importance factors. For example, a fewimportance factors may trump or veto importance values based upon allfactors, such as applying the highest value or preferentially displayingmessages from the user's mother or spouse, or deleting or neverdisplaying messages from particular senders, like a pesky stock broker.

In a further aspect, highlights, preferential display, and importancevalues may be determined based upon a subset of importance factors whenone or more criteria are satisfied. This aspect may enable users to weedout electronic messages for particular categories or under certainconditions. For example, a user may set a secondary sorting conditionbased upon the friendliness importance criterion such that if thefriendliness importance factor exceeds a user-set threshold, the systemfurther checks whether the user is known to the user or is a member ofthe user's family, and if not assigns a low importance value. Thisexample application of this aspect would enable users to weed outmessages from strangers with excessive friendliness as may be indicativeof inappropriate or spam messages (e.g., a message including “OMG!!! Ican make you SOOO much money!!! LOL!”). By enabling users to setconditional operations based upon any of the importance factors, thisaspect would enable users to exercise a broad range of controls over thedisplay and sorting of electronic messages.

While the foregoing aspects focused on obtaining information about thesender and highlighting, preferentially displaying, and/or sortingelectronic messages based upon that additional sender data, similarprocesses may be implemented to enable users in identifying importantmessages based on who else received each message. In this aspect thecomputing device may be configured to identify other recipients of anelectronic message, gather additional data about the identifiedrecipients, calculate importance values based upon the gatheredadditional data, highlight, preferentially display, or sort theelectronic messages in the inbox based on the calculated importancevalues, and/or display a portion of the gathered additional data withelectronic messages such as illustrated in FIGS. 1-5.

In addition to identifying and gathering information on electronicmessage senders and recipients, similar processes may also beimplemented to enable users in identifying important messages based onindividuals, companies and keywords included within received messages.In this aspect the computing device may be configured to recognizeindividual and/or company names within the subject or body of electronicmessages, gather additional data about the identified individuals and/orcompanies, calculate importance values based upon the gatheredadditional data, highlight, preferentially display, or sort theelectronic messages in the inbox based on the calculated importancevalues, and/or display a portion of the gathered additional data withelectronic messages such as illustrated in FIGS. 1-5.

Typical mobile devices 3500 suitable for use with the variousembodiments will have in common the components illustrated in FIG. 35.For example, the exemplary mobile device 3500 may include a processor3501 coupled to internal memory 3502, and a display 3503. The display3503 may be a touchscreen display configured to receive user inputgestures. Additionally, the mobile device 3500 may have an antenna 3504for sending and receiving electromagnetic radiation that is connected toa wireless data link and/or cellular telephone transceiver 3505 coupledto the processor 3501. In some implementations, the transceiver 905 andportions of the processor 3501 and memory 3502 used for cellulartelephone communications are collectively referred to as the airinterface since it provides a data interface via a wireless data link.Mobile devices that do not include a touchscreen display may alsoinclude a key pad 3506 or miniature keyboard and menu selection buttonsor rocker switches 3507 for receiving user inputs. The computing devicemay be equipped with a GPS device 3510 coupled to the processor 3501 forproviding location coordinates of the computing device 3500 andcalculating distances between the location of the device and anotherlocation.

The aspects described above may also be implemented within a variety ofcomputing devices, such as a laptop computer 3600 as illustrated in FIG.36. Many laptop computers include a touch pad touch surface that servesas the computer's pointing device. A laptop computer 3600 will typicallyinclude a processor 3601 coupled to volatile memory 3602 and a largecapacity nonvolatile memory, such as a disk drive 3603. The computer3600 may also include a floppy disc drive 3604 and a compact disc (CD)drive 3605 coupled to the processor 3601. The computer device 3600 mayalso include a number of connector ports coupled to the processor 3601for establishing data connections or receiving external memory devices,such as a USB or FireWire® connector sockets or other network connectioncircuits 3606 for coupling the processor 3601 to a network. In anotebook configuration, the computer housing includes the touchpad 3607,keyboard 3608 and the display 3609 all coupled to the processor 3601.

The aspects described above may also be implemented within on any of avariety of computing devices, such as a personal computer 3700illustrated in FIG. 37. Such a personal computer 3700 typically includesa processor 3701 coupled to volatile memory 3702 and a large capacitynonvolatile memory, such as a disk drive 3703. The computer 3700 mayalso include a compact disc (CD) and/or DVD drive 3706 coupled to theprocessor 3701. The computer device 3700 may also include a number ofconnector ports coupled to the processor 3701 for establishing dataconnections or receiving external memory devices, such as a networkconnection circuit 3704 for coupling the processor 3701 to a network3705. The computer 3700 may further be coupled to a keyboard 3708, apointing device such as a mouse 3709, and a display 3707 as is wellknown in the computer arts.

The various aspects described above may be implemented in a variety ofcomputing platforms. For example, the foregoing aspects may beimplemented in a user's computing device such as part of an electronicmessage handling application. Alternatively, the functionality of thevarious aspects may be implemented on a server hosting electronicmessages, or another server that processes electronic messages togenerate the importance and ranking values that may be used by a user'scomputing device and/or an electronic message hosting server. FIG. 38illustrates an example communication system 3800 illustrating differentcomputers in which the various aspects may be hosted. Such a typicalelectronic message communication system 3800 may include a wirelesscommunication network 3802 communicating with mobile computing devices3806 and coupled to the Internet 3814 via an electronic mail server3804. User personal computing devices 3808 may receive electronicmessages from the electronic mail server 3804 via a local network or viathe Internet 3814. The communication system 3800 may also include aplurality of information servers 3812, 3816 coupled to the Internet 3814which may store data about senders that may be obtained via Internetsearches in the various aspects. The communication system 3800 may alsoinclude a special-purpose server 3810 configured to perform the dataresearch and message scoring functions of the various aspects, makingsuch processed electronic messages available to user computing devices3808, 3806 via the Internet 3814 and/or a user's electronic mail server3804.

FIG. 39 illustrates an example method 3900 by which electronic mailservers or other servers coupled to the Internet can perform thefunctionality of the various aspects to provide scored and/or blankelectronic messages to user computing devices. In method 3900 at block3902, the server may receive in cash and electronic message for aparticular client. For example, if the server is the user's electronicmail server 3804, the processing in block 3902 may occur when a userincoming message is received. If the server is an independent server(i.e., not the user's electronic mail server), the electronic messagemay be received from a user's computing device (as in a request forsorting services) or from the user's electronic mail server. At block3904, the server may access a database of preference settings for theclient for whom the electronic message is intended. Such preferencesettings may include the importance criteria and applied weights asdescribed above. At block 3906, the server may parse the receivedelectronic message and use the identity of the sender to accessdatabases to acquire information regarding the sender using methods verysimilar to those described above. In block 3908, the server may useinformation received via the database searches to calculate the factorvalues and importance values to apply to the received electronic messageas if the calculation were being performed by the user's computingdevice in a manner similar to that described above. In block 3910, theserver may optionally resort the electronic messages for the clientbased upon the calculated importance values. For implementations inwhich the server is the user's electronic mail server, such operationswill result in sorted and ranked electronic messages that will appear inthe proper order one the user's electronic mail account is accessed. Forimplementations in which the server is a separate service provider, theimportance values computed for each electronic message may be passed toa user's computing device or to the user's electronic mail server. As aresult of such outsourcing of the sender data retrieval and importancevalue calculation, users can receive the benefit of the various aspectswithout imposing a significant computing burden on their computingdevices.

The foregoing method descriptions and the process flow diagrams areprovided merely as illustrative examples and are not intended to requireor imply that the steps of the various embodiments must be performed inthe order presented. As will be appreciated by one of skill in the artthe order of steps in the foregoing embodiments may be performed in anyorder. Words such as “thereafter,” “then,” “next,” etc. are not intendedto limit the order of the steps; these words are simply used to guidethe reader through the description of the methods. Further, anyreference to claim elements in the singular, for example, using thearticles “a,” “an” or “the” is not to be construed as limiting theelement to the singular.

The various illustrative logical blocks, modules, circuits, andalgorithm steps described in connection with the embodiments disclosedherein may be implemented as electronic hardware, computer software, orcombinations of both. To clearly illustrate this interchangeability ofhardware and software, various illustrative components, blocks, modules,circuits, and steps have been described above generally in terms oftheir functionality. Whether such functionality is implemented ashardware or software depends upon the particular application and designconstraints imposed on the overall system. Skilled artisans mayimplement the described functionality in varying ways for eachparticular application, but such implementation decisions should not beinterpreted as causing a departure from the scope of the presentinvention.

The hardware used to implement the various illustrative logics, logicalblocks, modules, and circuits described in connection with the aspectsdisclosed herein may be implemented or performed with a general purposeprocessor, a digital signal processor (DSP), an application specificintegrated circuit (ASIC), a field programmable gate array (FPGA) orother programmable logic device, discrete gate or transistor logic,discrete hardware components, or any combination thereof designed toperform the functions described herein. A general-purpose processor maybe a microprocessor, but, in the alternative, the processor may be anyconventional processor, controller, microcontroller, or state machine Aprocessor may also be implemented as a combination of computing devices,e.g., a combination of a DSP and a microprocessor, a plurality ofmicroprocessors, one or more microprocessors in conjunction with a DSPcore, or any other such configuration. Alternatively, some steps ormethods may be performed by circuitry that is specific to a givenfunction.

In one or more exemplary aspects, the functions described may beimplemented in hardware, software, firmware, or any combination thereof.If implemented in software, the functions may be stored on ortransmitted over as one or more instructions or code on acomputer-readable medium. The steps of a method or algorithm disclosedherein may be embodied in a processor-executable software moduleexecuted which may reside on a computer-readable medium.Computer-readable media includes both computer storage media andcommunication media including any medium that facilitates transfer of acomputer program from one place to another. A storage media may be anyavailable media that may be accessed by a computer. By way of example,and not limitation, such computer-readable media may comprise RAM, ROM,EEPROM, CD-ROM or other optical disk storage, magnetic disk storage orother magnetic storage devices, or any other medium that may be used tocarry or store desired program code in the form of instructions or datastructures and that may be accessed by a computer. Also, any connectionis properly termed a computer-readable medium. For example, if thesoftware is transmitted from a website, server, or other remote sourceusing a coaxial cable, fiber optic cable, twisted pair, digitalsubscriber line (DSL), or wireless technologies such as infrared, radio,and microwave, then the coaxial cable, fiber optic cable, twisted pair,DSL, or wireless technologies such as infrared, radio, and microwave areincluded in the definition of medium. Disk and disc, as used herein,includes compact disc (CD), laser disc, optical disc, digital versatiledisc (DVD), floppy disk, and blu-ray disc where disks usually reproducedata magnetically, while discs reproduce data optically with lasers.Combinations of the above should also be included within the scope ofcomputer-readable media. Additionally, the operations of a method oralgorithm may reside as one or any combination or set of codes and/orinstructions on a machine readable medium and/or computer-readablemedium, which may be incorporated into a computer program product.

The preceding description of the disclosed embodiments is provided toenable any person skilled in the art to make or use the presentinvention. Various modifications to these embodiments will be readilyapparent to those skilled in the art, and the generic principles definedherein may be applied to other embodiments without departing from thespirit or scope of the invention. Thus, the present invention is notintended to be limited to the embodiments shown herein but is to beaccorded the widest scope consistent with the following claims and theprinciples and novel features disclosed herein.

1. A method for displaying a plurality of electronic messages,comprising: parsing each of the plurality of electronic messages toobtain identity information about an entity associated with eachelectronic message; searching a first database for additional datarelated to the obtained identity information; retrieving additional datarelated to the obtained identity information from the first database;and adjusting a display of the plurality of electronic message based onthe retrieved additional data.
 2. The method of claim 1, wherein theplurality of electronic messages are email messages.
 3. The method ofclaim 1, wherein the entity is selected from a recipient of eachelectronic message, a sender of the electronic message, an individualmentioned in each electronic message, and a company mentioned in eachelectronic message.
 4. The method of claim 1, wherein the first databaseis accessed via the Internet.
 5. The method of claim 1, wherein thefirst database is a contacts database.
 6. The method of claim 1, furthercomprising: storing at least a portion of the retrieved additional datarelated to the obtained identity information in a prior search resultsdatabase; searching the prior search results database for previouslyretrieve additional data related to the obtained identity information;and accessing previously retrieve additional data related to theobtained identity information from the prior search results database,wherein searching the first database and retrieving additional data fromthe first database are performed if no previously retrieve additionaldata related to the obtained identity information is retrieved from theprior search results database.
 7. The method of claim 6, whereinsearching the first database and retrieving additional data from thefirst database are performed if previously retrieved additional datarelated to the obtained identity information is retrieved from the priorsearch results database but the time since a last search exceeds apredetermined threshold.
 8. The method of claim 1, wherein adjusting adisplay of the plurality of electronic messages based on the retrievedadditional data comprises modifying a display of at least one of theplurality of electronic messages based upon an importance valuecalculated by applying an algorithm to the additional data retrieved foreach electronic message.
 9. The method of claim 1, wherein adjusting adisplay of the plurality of electronic messages based on the retrievedadditional data comprises sorting the plurality of electronic messagesby applying an algorithm to the additional data retrieved for eachelectronic message to generate an importance value.
 10. The method ofclaim 1, wherein adjusting a display of the plurality of electronicmessages based on the retrieved additional data comprises: calculatingan importance value for each electronic message based on a plurality ofimportance factors determined from the additional data; and sorting theplurality of electronic messages based on the calculated importancevalue.
 11. The method of claim 10, wherein the additional data isselected from the group consisting of company name, job title, age,gender, ethnicity, income, social networking data, social networklinkages, Google™ hits, alma mater, home value, home address, images,political affiliation, political donations, number of times a reply hasbeen sent to a sender of the message, number of times a message from asender has been received but not opened, and distance to sender'scompany.
 12. The method of claim 10, wherein calculating an importancevalue for each electronic message based on a plurality of importancefactors determined from the additional data comprises: parsing theelectronic message to obtain information within the message body todetermine a time required to review the message; determining a timerequired to review importance factor based on the determined timerequired to review the message; and including the determined requiredtime to review importance factor as one of the plurality of importancefactors used to calculate the importance value.
 13. The method of claim10, wherein calculating an importance value for each electronic messagebased on a plurality of importance factors determined from theadditional data comprises: parsing the electronic message to determineits original Internet portal address; determining an ExternalOrInternalimportance factor based on the original Internet portal address; andincluding the determined ExternalOrInternal importance factor as one ofthe plurality of importance factors used to calculate the importancevalue.
 14. The method of claim 10, wherein calculating an importancevalue for each electronic message based on a plurality of importancefactors determined from the additional data comprises: parsing theelectronic message to determine the identity of a sender; determining aHowOftenIHaveReplied importance factor base on the identity of a sender;and including the determined HowOftenIHaveReplied importance factor asone of the plurality of importance factors used to calculate theimportance value.
 15. The method of claim 10, wherein calculating animportance value for each electronic message based on a plurality ofimportance factors determined from the additional data comprises:parsing the electronic message to determine the identity of a sender;determining a political party of the sender based on the identity of asender; determining a PoliticalParty importance factor base on thedetermined political party; and including the determined PoliticalPartyimportance factor as one of the plurality of importance factors used tocalculate the importance value.
 16. The method of claim 10, whereincalculating an importance value for each electronic message based on aplurality of importance factors determined from the additional datacomprises: parsing the electronic message to determine the identity of asender; obtaining images of the sender based on the identity of asender; determining Attractiveness importance factor base on theobtained images; and including the determined Attractiveness importancefactor as one of the plurality of importance factors used to calculatethe importance value.
 17. The method of claim 10, wherein calculating animportance value for each electronic message based on a plurality ofimportance factors determined from the additional data comprises:parsing the electronic message to determine the identity of a sender;determining a Gender of the sender based on the identity of the sender;determining a gender importance factor base on the gender of the sender;and including the determined gender importance factor as one of theplurality of importance factors used to calculate the importance value.18. The method of claim 10, wherein calculating an importance value foreach electronic message based on a plurality of importance factorsdetermined from the additional data comprises: parsing the electronicmessage to determine the date of the message; determining a DateSentimportance factor base on the date of the message; and including thedetermined DateSent importance factor as one of the plurality ofimportance factors used to calculate the importance value.
 19. Themethod of claim 10, wherein calculating an importance value for eachelectronic message based on a plurality of importance factors determinedfrom the additional data comprises: parsing the electronic message todetermine the identity of a sender; determining a Preapproved importancefactor base on the identity of a sender; and including the determinedrequired to review importance factor as one of the plurality ofimportance factors used to calculate the importance value.
 20. Themethod of claim 10, wherein calculating an importance value for eachelectronic message based on a plurality of importance factors determinedfrom the additional data comprises: parsing the electronic message toobtain a keyword; determining a Keyword importance factor base onobtained keywords; and including the determined Keyword importancefactor as one of the plurality of importance factors used to calculatethe importance value.
 21. The method of claim 10, wherein calculating animportance value for each electronic message based on a plurality ofimportance factors determined from the additional data comprises:parsing the electronic message to determine a list of recipients of themessage; determining a SentJustToMe importance factor base on the listof recipients of the message; and including the determined SentJustToMeimportance factor as one of the plurality of importance factors used tocalculate the importance value.
 22. The method of claim 10, whereincalculating an importance value for each electronic message based on aplurality of importance factors determined from the additional datacomprises: parsing the electronic message to determine the identity of asender's company; determining a CompanyCareAbout importance factor baseon the identity of a sender's company; and including the determinedCompanyCareAbout importance factor as one of the plurality of importancefactors used to calculate the importance value.
 23. The method of claim10, wherein calculating an importance value for each electronic messagebased on a plurality of importance factors determined from theadditional data comprises: parsing the electronic message to determinethe identity of a sender; determining an alma mater of the sender basedon the identify of the sender; determining an Alum importance factorbase on the determined alma mater; and including the determined Alumimportance factor as one of the plurality of importance factors used tocalculate the importance value.
 24. The method of claim 10, whereincalculating an importance value for each electronic message based on aplurality of importance factors determined from the additional datacomprises: parsing the electronic message to determine the identity of asender; determining a FamilyMember importance factor base on theidentity of a sender; and including the determined FamilyMemberimportance factor as one of the plurality of importance factors used tocalculate the importance value.
 25. The method of claim 10, whereincalculating an importance value for each electronic message based on aplurality of importance factors determined from the additional datacomprises: parsing the electronic message to determine the identity of asender; determining an estimated wealth of the sender based on theidentity of a sender determining an EstimatedWealth importance factorbase on the estimated wealth of the sender; and including the determinedEstimatedWealth importance factor as one of the plurality of importancefactors used to calculate the importance value.
 26. The method of claim10, wherein calculating an importance value for each electronic messagebased on a plurality of importance factors determined from theadditional data comprises: parsing the electronic message to determinethe identity of a sender; accessing a social network based on theidentity of a sender to determine a number of social network connectionsassociated with the sender; determining a Popularity importance factorbase sender connections on the determined number of social networkconnections associated with the sender; and including the determinedPopularity importance factor as one of the plurality of importancefactors used to calculate the importance value.
 27. The method of claim10, wherein calculating an importance value for each electronic messagebased on a plurality of importance factors determined from theadditional data comprises: parsing the electronic message to determinethe identity of a sender; accessing a social network based on theidentity of a sender; determining a FriendsInCommon importance factorbase on sender connections identified on the social network; andincluding the determined FriendsInCommon importance factor as one of theplurality of importance factors used to calculate the importance value.28. The method of claim 10, wherein calculating an importance value foreach electronic message based on a plurality of importance factorsdetermined from the additional data comprises: parsing the electronicmessage to determine the identity of a sender; determining a measure ofhow much the sender has traveled by searching a database using theidentity of a sender; determining a WellTraveled? importance factor baseon the measure of how much the sender has traveled; and including thedetermined WellTraveled? importance factor as one of the plurality ofimportance factors used to calculate the importance value.
 29. Themethod of claim 10, wherein calculating an importance value for eachelectronic message based on a plurality of importance factors determinedfrom the additional data comprises: parsing the electronic message todetermine the types of punctuation used in the message; determining aNumberOF_?_Marks importance factor base on the types of punctuation usedin the message; and including the determined NumberOF_?_Marks importancefactor as one of the plurality of importance factors used to calculatethe importance value.
 30. The method of claim 10, wherein calculating animportance value for each electronic message based on a plurality ofimportance factors determined from the additional data comprises:parsing the electronic message to determine the types of punctuationused in the message; determining a NumberOf_!_Marks importance factorbase on the types of punctuation used in the message; and including thedetermined NumberOf_!_Marks importance factor as one of the plurality ofimportance factors used to calculate the importance value.
 31. Themethod of claim 10, wherein calculating an importance value for eachelectronic message based on a plurality of importance factors determinedfrom the additional data comprises: parsing the electronic message toobtain words used in the message; determining a FriendlinessOfMessageimportance factor base on the words used in the message; and includingthe determined FriendlinessOfMessage importance factor as one of theplurality of importance factors used to calculate the importance value.32. The method of claim 10, wherein calculating an importance value foreach electronic message based on a plurality of importance factorsdetermined from the additional data comprises: parsing the electronicmessage to determine the identity of a sender; accessing a databaseusing the identity of the sender to determine an age of the sender;determining an Age importance factor base on the determined age of thesender; and including the determined Age importance factor as one of theplurality of importance factors used to calculate the importance value.33. The method of claim 10, wherein calculating an importance value foreach electronic message based on a plurality of importance factorsdetermined from the additional data comprises: parsing the electronicmessage to determine the identity of a sender; determining a nation oforigin of the sender based on the identity of the sender; determining aNationalOrigin importance factor base on the determined nation of originof the sender; and including the determined NationalOrigin importancefactor as one of the plurality of importance factors used to calculatethe importance value.
 34. The method of claim 10, wherein calculating animportance value for each electronic message based on a plurality ofimportance factors determined from the additional data comprises:parsing the electronic message to determine the identity of a sender;accessing a database to obtain images of the sender based on theidentity of the sender; determining a skin tone of the sender based onthe obtained images of the sender; determining a ColorOfSkin importancefactor base on the determined skin tone; and including the determinedColorOfSkin importance factor as one of the plurality of importancefactors used to calculate the importance value.
 35. The method of claim10, wherein calculating an importance value for each electronic messagebased on a plurality of importance factors determined from theadditional data comprises: parsing the electronic message to determinethe identity of a sender; accessing a database using the identity of thesender to determine a measure of electronic messages received from thesender that previously have been read but not replied to; determining aReadButNotRepliedTo importance factor base on the determined measure ofelectronic messages received from the sender that previously have beenread but not replied to; and including the determinedReadButNotRepliedTo importance factor as one of the plurality ofimportance factors used to calculate the importance value.
 36. Themethod of claim 10, wherein calculating an importance value for eachelectronic message based on a plurality of importance factors determinedfrom the additional data comprises: parsing the electronic message todetermine the identity of a sender; accessing a database using theidentity of the sender to determine a measure of electronic messagespreviously received from the sender that have not been opened;determining a ReceivedButNotOpened importance factor base on thedetermined measure of electronic messages previously received from thesender that have not been opened; and including the determinedReceivedButNotOpened importance factor as one of the plurality ofimportance factors used to calculate the importance value.
 37. Themethod of claim 10, wherein calculating an importance value for eachelectronic message based on a plurality of importance factors determinedfrom the additional data comprises: parsing the electronic message todetermine an identity of a sender's company; determining a location ofthe sender's company; determining a distance to the location of thesender's company; determining a DistanceFromCompany importance factorbased on the determined distance to the location of the sender'scompany; and including the determined DistanceFromCompany importancefactor as one of the plurality of importance factors used to calculatethe importance value.
 38. The method of claim 10, further comprisinghighlighting at least a portion of a display of each electronic messagebased upon the importance value.
 39. The method of claim 10, whereincalculating an importance value for each electronic message comprises:multiplying a weighting factor times an importance factor based on anadditional data related to the obtained identity information.
 40. Themethod of claim 10, wherein calculating an importance value for eachelectronic message comprises: applying a first algorithm to a first typeof additional data related to the obtained identity information toobtain a first criterion importance factor; applying a second algorithmto a second type of additional data related to the obtained identityinformation to obtain a second criterion importance factor; andcalculating the importance value by summing a product of the firstcriterion importance factor times a first weighting factor and a productof the second criterion importance factor times a second weightingfactor.
 41. The method of claim 40, further comprising receiving userinputs selecting criteria for sorting the plurality of electronicmessages, wherein the first type of additional data, the firstalgorithm, the second type of additional data, and the second algorithmare determined based upon the received user inputs.
 42. The method ofclaim 40, further comprising receiving user inputs identifyingpriorities for sorting the plurality of electronic messages, wherein thefirst weighting factor and the second weighting factor are determinedbased upon the receive user inputs.
 43. The method of claim 42, whereinsearching the first database for additional data related to the obtainedidentity information is only performed for information relevant to analgorithm for which a corresponding weighting factor is greater than athreshold value.
 44. The method of claim 42, further comprisingdisplaying a graphical user interface including user-interface iconsthat a user can manipulate with a user interface pointing device toindicate relative priorities of importance criteria, wherein receivinguser inputs identifying priorities for sorting the plurality ofelectronic messages comprises determining user manipulations of theuser-interface icons included in the displayed graphical user interfaceand interpreting the user manipulations as a relative priority.
 45. Themethod of claim 42, further comprising receiving user inputs identifyinga condition to be compared to one of the first or second types ofadditional data and a conditional operation to be performed on anelectronic message when the condition is satisfied by the one of thefirst or second types of additional data.
 46. A computing device,comprising: a processor; a display coupled to the processor; a memorycoupled to the processor; and a communication circuit coupled to theprocessor and configured to communicate with a network and receiveelectronic messages, wherein the processor is configured withprocessor-executable instructions to perform operations comprising:parsing each of a plurality of electronic messages to obtain identityinformation about an entity associated with each electronic message;searching a first database for additional data related to the obtainedidentity information; retrieving additional data related to the obtainedidentity information from the first database; and adjusting a display ofthe plurality of electronic messages based on the retrieved additionaldata.
 47. The computing device of claim 46, wherein the processor isconfigured with processor-executable instructions to perform operationssuch that the plurality of electronic messages are email messages. 48.The computing device of claim 46, wherein the processor is configuredwith processor-executable instructions to perform operations such thatthe entity is selected from a recipient of each electronic message, asender of the electronic message, an individual mentioned in eachelectronic message, and a company mentioned in each electronic message.49. The computing device of claim 46, wherein the processor isconfigured with processor-executable instructions to perform operationssuch that the first database is accessed via the Internet through thecommunication circuit.
 50. The computing device of claim 46, wherein theprocessor is configured with processor-executable instructions toperform operations such that the first database is a contacts databasestored in the memory.
 51. The computing device of claim 46, wherein theprocessor is configured with processor-executable instructions toperform operations further comprising: storing at least a portion of theretrieved additional data related to the obtained identity informationin a prior search results database; searching the prior search resultsdatabase for previously retrieve additional data related to the obtainedidentity information; and accessing previously retrieve additional datarelated to the obtained identity information from the prior searchresults database, wherein searching the first database and retrievingadditional data from the first database are performed if no previouslyretrieve additional data related to the obtained identity information isretrieved from the prior search results database.
 52. The computingdevice of claim 51, wherein the processor is configured withprocessor-executable instructions to perform operations such thatsearching the first database and retrieving additional data from thefirst database are performed if previously retrieved additional datarelated to the obtained identity information is retrieved from the priorsearch results database but the time since a last search exceeds apredetermined threshold.
 53. The computing device of claim 46, whereinthe processor is configured with processor-executable instructions toperform operations such that adjusting a display of the plurality ofelectronic messages based on the retrieved additional data comprisesmodifying a display of at least one of the plurality of electronicmessages based upon an importance value calculated by applying analgorithm to the additional data retrieved for each electronic message.54. The computing device of claim 46, wherein the processor isconfigured with processor-executable instructions to perform operationssuch that adjusting a display of the plurality of electronic messagesbased on the retrieved additional data comprises sorting the pluralityof electronic messages by applying an algorithm to the additional dataretrieved for each electronic message to generate an importance value.55. The computing device of claim 46, wherein the processor isconfigured with processor-executable instructions to perform operationssuch that adjusting a display of the plurality of electronic messagesbased on the retrieved additional data comprises: calculating animportance value for each electronic message based on a plurality ofimportance factors determined from the additional data; and sorting theplurality of electronic messages based on the calculated importancevalue.
 56. The computing device of claim 55, wherein the processor isconfigured with processor-executable instructions to perform operationssuch that the additional data is selected from the group consisting ofcompany name, job title, age, gender, ethnicity, income, socialnetworking data, social network linkages, Google™ hits, alma mater, homevalue, home address, images, political affiliation, political donations,number of times a reply has been sent to a sender of the message, numberof times a message from a sender has been received but not opened, anddistance to sender's company.
 57. The computing device of claim 55,wherein the processor is configured with processor-executableinstructions to perform operations such that calculating an importancevalue for each electronic message based on a plurality of importancefactors determined from the additional data comprises: parsing theelectronic message to obtain information within the message body todetermine a time required to review the message; determining a timerequired to review importance factor based on the determined timerequired to review the message; and including the determined requiredtime to review importance factor as one of the plurality of importancefactors used to calculate the importance value.
 58. The computing deviceof claim 55, wherein the processor is configured withprocessor-executable instructions to perform operations such thatcalculating an importance value for each electronic message based on aplurality of importance factors determined from the additional datacomprises: parsing the electronic message to determine its originalInternet portal address; determining an ExternalOrInternal importancefactor based on the original Internet portal address; and including thedetermined ExternalOrInternal importance factor as one of the pluralityof importance factors used to calculate the importance value.
 59. Thecomputing device of claim 55, wherein the processor is configured withprocessor-executable instructions to perform operations such thatcalculating an importance value for each electronic message based on aplurality of importance factors determined from the additional datacomprises: parsing the electronic message to determine the identity of asender; determining a HowOftenIHaveReplied importance factor base on theidentity of a sender; and including the determined HowOftenIHaveRepliedimportance factor as one of the plurality of importance factors used tocalculate the importance value.
 60. The computing device of claim 55,wherein the processor is configured with processor-executableinstructions to perform operations such that calculating an importancevalue for each electronic message based on a plurality of importancefactors determined from the additional data comprises: parsing theelectronic message to determine the identity of a sender; determining apolitical party of the sender based on the identity of a sender;determining a PoliticalParty importance factor base on the determinedpolitical party; and including the determined PoliticalParty importancefactor as one of the plurality of importance factors used to calculatethe importance value.
 61. The computing device of claim 55, wherein theprocessor is configured with processor-executable instructions toperform operations such that calculating an importance value for eachelectronic message based on a plurality of importance factors determinedfrom the additional data comprises: parsing the electronic message todetermine the identity of a sender; obtaining images of the sender basedon the identity of a sender; determining Attractiveness importancefactor base on the obtained images; and including the determinedAttractiveness importance factor as one of the plurality of importancefactors used to calculate the importance value.
 62. The computing deviceof claim 55, wherein the processor is configured withprocessor-executable instructions to perform operations such thatcalculating an importance value for each electronic message based on aplurality of importance factors determined from the additional datacomprises: parsing the electronic message to determine the identity of asender; determining a Gender of the sender based on the identity of thesender; determining a gender importance factor base on the gender of thesender; and including the determined gender importance factor as one ofthe plurality of importance factors used to calculate the importancevalue.
 63. The computing device of claim 55, wherein the processor isconfigured with processor-executable instructions to perform operationssuch that calculating an importance value for each electronic messagebased on a plurality of importance factors determined from theadditional data comprises: parsing the electronic message to determinethe date of the message; determining a DateSent importance factor baseon the date of the message; and including the determined DateSentimportance factor as one of the plurality of importance factors used tocalculate the importance value.
 64. The computing device of claim 55,wherein the processor is configured with processor-executableinstructions to perform operations such that calculating an importancevalue for each electronic message based on a plurality of importancefactors determined from the additional data comprises: parsing theelectronic message to determine the identity of a sender; determining aPreapproved importance factor base on the identity of a sender; andincluding the determined required to review importance factor as one ofthe plurality of importance factors used to calculate the importancevalue.
 65. The computing device of claim 55, wherein the processor isconfigured with processor-executable instructions to perform operationssuch that calculating an importance value for each electronic messagebased on a plurality of importance factors determined from theadditional data comprises: parsing the electronic message to obtain akeyword; determining a Keyword importance factor base on obtainedkeywords; and including the determined Keyword importance factor as oneof the plurality of importance factors used to calculate the importancevalue.
 66. The computing device of claim 55, wherein the processor isconfigured with processor-executable instructions to perform operationssuch that calculating an importance value for each electronic messagebased on a plurality of importance factors determined from theadditional data comprises: parsing the electronic message to determine alist of recipients of the message; determining a SentJustToMe importancefactor base on the list of recipients of the message; and including thedetermined SentJustToMe importance factor as one of the plurality ofimportance factors used to calculate the importance value.
 67. Thecomputing device of claim 55, wherein the processor is configured withprocessor-executable instructions to perform operations such thatcalculating an importance value for each electronic message based on aplurality of importance factors determined from the additional datacomprises: parsing the electronic message to determine the identity of asender's company; determining a CompanyCareAbout importance factor baseon the identity of a sender's company; and including the determinedCompanyCareAbout importance factor as one of the plurality of importancefactors used to calculate the importance value.
 68. The computing deviceof claim 55, wherein the processor is configured withprocessor-executable instructions to perform operations such thatcalculating an importance value for each electronic message based on aplurality of importance factors determined from the additional datacomprises: parsing the electronic message to determine the identity of asender; determining an alma mater of the sender based on the identify ofthe sender; determining an Alum importance factor base on the determinedalma mater; and including the determined Alum importance factor as oneof the plurality of importance factors used to calculate the importancevalue.
 69. The computing device of claim 55, wherein the processor isconfigured with processor-executable instructions to perform operationssuch that calculating an importance value for each electronic messagebased on a plurality of importance factors determined from theadditional data comprises: parsing the electronic message to determinethe identity of a sender; determining a FamilyMember importance factorbase on the identity of a sender; and including the determinedFamilyMember importance factor as one of the plurality of importancefactors used to calculate the importance value.
 70. The computing deviceof claim 55, wherein the processor is configured withprocessor-executable instructions to perform operations such thatcalculating an importance value for each electronic message based on aplurality of importance factors determined from the additional datacomprises: parsing the electronic message to determine the identity of asender; determining an estimated wealth of the sender based on theidentity of a sender determining an EstimatedWealth importance factorbase on the estimated wealth of the sender; and including the determinedEstimatedWealth importance factor as one of the plurality of importancefactors used to calculate the importance value.
 71. The computing deviceof claim 55, wherein the processor is configured withprocessor-executable instructions to perform operations such thatcalculating an importance value for each electronic message based on aplurality of importance factors determined from the additional datacomprises: parsing the electronic message to determine the identity of asender; accessing a social network based on the identity of a sender todetermine a number of social network connections associated with thesender; determining a Popularity importance factor base senderconnections on the determined number of social network connectionsassociated with the sender; and including the determined Popularityimportance factor as one of the plurality of importance factors used tocalculate the importance value.
 72. The computing device of claim 55,wherein the processor is configured with processor-executableinstructions to perform operations such that calculating an importancevalue for each electronic message based on a plurality of importancefactors determined from the additional data comprises: parsing theelectronic message to determine the identity of a sender; accessing asocial network based on the identity of a sender; determining aFriendsInCommon importance factor base on sender connections identifiedon the social network; and including the determined FriendsInCommonimportance factor as one of the plurality of importance factors used tocalculate the importance value.
 73. The computing device of claim 55,wherein the processor is configured with processor-executableinstructions to perform operations such that calculating an importancevalue for each electronic message based on a plurality of importancefactors determined from the additional data comprises: parsing theelectronic message to determine the identity of a sender; determining ameasure of how much the sender has traveled by searching a databaseusing the identity of a sender; determining a WellTraveled? importancefactor base on the measure of how much the sender has traveled; andincluding the determined WellTraveled? importance factor as one of theplurality of importance factors used to calculate the importance value.74. The computing device of claim 55, wherein the processor isconfigured with processor-executable instructions to perform operationssuch that calculating an importance value for each electronic messagebased on a plurality of importance factors determined from theadditional data comprises: parsing the electronic message to determinethe types of punctuation used in the message; determining aNumberOF_?_Marks importance factor base on the types of punctuation usedin the message; and including the determined NumberOF_?_Marks importancefactor as one of the plurality of importance factors used to calculatethe importance value.
 75. The computing device of claim 55, wherein theprocessor is configured with processor-executable instructions toperform operations such that calculating an importance value for eachelectronic message based on a plurality of importance factors determinedfrom the additional data comprises: parsing the electronic message todetermine the types of punctuation used in the message; determining aNumberOf_!_Marks importance factor base on the types of punctuation usedin the message; and including the determined NumberOf_!_Marks importancefactor as one of the plurality of importance factors used to calculatethe importance value.
 76. The computing device of claim 55, wherein theprocessor is configured with processor-executable instructions toperform operations such that calculating an importance value for eachelectronic message based on a plurality of importance factors determinedfrom the additional data comprises: parsing the electronic message toobtain words used in the message; determining a FriendlinessOfMessageimportance factor base on the words used in the message; and includingthe determined FriendlinessOfMessage importance factor as one of theplurality of importance factors used to calculate the importance value.77. The computing device of claim 55, wherein the processor isconfigured with processor-executable instructions to perform operationssuch that calculating an importance value for each electronic messagebased on a plurality of importance factors determined from theadditional data comprises: parsing the electronic message to determinethe identity of a sender; accessing a database using the identity of thesender to determine an age of the sender; determining an Age importancefactor base on the determined age of the sender; and including thedetermined Age importance factor as one of the plurality of importancefactors used to calculate the importance value.
 78. The computing deviceof claim 55, wherein the processor is configured withprocessor-executable instructions to perform operations such thatcalculating an importance value for each electronic message based on aplurality of importance factors determined from the additional datacomprises: parsing the electronic message to determine the identity of asender; determining a nation of origin of the sender based on theidentity of the sender; determining a NationalOrigin importance factorbase on the determined nation of origin of the sender; and including thedetermined NationalOrigin importance factor as one of the plurality ofimportance factors used to calculate the importance value.
 79. Thecomputing device of claim 55, wherein the processor is configured withprocessor-executable instructions to perform operations such thatcalculating an importance value for each electronic message based on aplurality of importance factors determined from the additional datacomprises: parsing the electronic message to determine the identity of asender; accessing a database to obtain images of the sender based on theidentity of the sender; determining a skin tone of the sender based onthe obtained images of the sender; determining a ColorOfSkin importancefactor base on the determined skin tone; and including the determinedColorOfSkin importance factor as one of the plurality of importancefactors used to calculate the importance value.
 80. The computing deviceof claim 55, wherein the processor is configured withprocessor-executable instructions to perform operations such thatcalculating an importance value for each electronic message based on aplurality of importance factors determined from the additional datacomprises: parsing the electronic message to determine the identity of asender; accessing a database using the identity of the sender todetermine a measure of electronic messages received from the sender thatpreviously have been read but not replied to; determining aReadButNotRepliedTo importance factor base on the determined measure ofelectronic messages received from the sender that previously have beenread but not replied to; and including the determinedReadButNotRepliedTo importance factor as one of the plurality ofimportance factors used to calculate the importance value.
 81. Thecomputing device of claim 55, wherein the processor is configured withprocessor-executable instructions to perform operations such thatcalculating an importance value for each electronic message based on aplurality of importance factors determined from the additional datacomprises: parsing the electronic message to determine the identity of asender; accessing a database using the identity of the sender todetermine a measure of electronic messages previously received from thesender that have not been opened; determining a ReceivedButNotOpenedimportance factor base on the determined measure of electronic messagespreviously received from the sender that have not been opened; andincluding the determined ReceivedButNotOpened importance factor as oneof the plurality of importance factors used to calculate the importancevalue.
 82. The computing device of claim 55, wherein the processor isconfigured with processor-executable instructions to perform operationssuch that calculating an importance value for each electronic messagebased on a plurality of importance factors determined from theadditional data comprises: parsing the electronic message to determinean identity of a sender's company; determining a location of thesender's company; determining a distance to the location of the sender'scompany; determining a DistanceFromCompany importance factor based onthe determined distance to the location of the sender's company; andincluding the determined DistanceFromCompany importance factor as one ofthe plurality of importance factors used to calculate the importancevalue.
 83. The computing device of claim 55, wherein the processor isconfigured with processor-executable instructions to perform operationsfurther comprising highlighting at least a portion of a display of eachelectronic message based upon the importance value.
 84. The computingdevice of claim 55, wherein the processor is configured withprocessor-executable instructions to perform operations such thatcalculating an importance value for each electronic message comprises:multiplying a weighting factor times an importance factor based on anadditional data related to the obtained identity information.
 85. Thecomputing device of claim 55, wherein the processor is configured withprocessor-executable instructions to perform operations such thatcalculating an importance value for each electronic message comprises:applying a first algorithm to a first type of additional data related tothe obtained identity information to obtain a first criterion importancefactor; applying a second algorithm to a second type of additional datarelated to the obtained identity information to obtain a secondcriterion importance factor; and calculating the importance value bysumming a product of the first criterion importance factor times a firstweighting factor and a product of the second criterion importance factortimes a second weighting factor.
 86. The computing device of claim 85,wherein the processor is configured with processor-executableinstructions to perform operations further comprising receiving userinputs selecting criteria for sorting the plurality of electronicmessages, wherein the first type of additional data, the firstalgorithm, the second type of additional data, and the second algorithmare determined based upon the received user inputs.
 87. The computingdevice of claim 85, wherein the processor is configured withprocessor-executable instructions to perform operations furthercomprising receiving user inputs identifying priorities for sorting theplurality of electronic messages, wherein the first weighting factor andthe second weighting factor are determined based upon the receive userinputs.
 88. The computing device of claim 87, wherein the processor isconfigured with processor-executable instructions to perform operationssuch that searching the first database for additional data related tothe obtained identity information is only performed for informationrelevant to an algorithm for which a corresponding weighting factor isgreater than a threshold value.
 89. The computing device of claim 87,wherein the processor is configured with processor-executableinstructions to perform operations further comprising displaying agraphical user interface including user-interface icons that a user canmanipulate with a user interface pointing device to indicate relativepriorities of importance criteria, wherein receiving user inputsidentifying priorities for sorting the plurality of electronic messagescomprises determining user manipulations of the user-interface iconsincluded in the displayed graphical user interface and interpreting theuser manipulations as a relative priority.
 90. The computing device ofclaim 87, wherein the processor is configured with processor-executableinstructions to perform operations further comprising receiving userinputs identifying a condition to be compared to one of the first orsecond types of additional data and a conditional operation to beperformed on an electronic message when the condition is satisfied bythe one of the first or second types of additional data.
 91. Thecomputing device of claim 46, wherein the computing device is a personalcomputer.
 92. The computing device of claim 46, wherein the computingdevice is a server, wherein the processor is configured withprocessor-executable instructions to perform operations to adjust thedisplay of the plurality of electronic messages by adjusting theplurality of messages stored in memory prior to being downloaded by arecipient user computer.
 93. A computing device, comprising: means forparsing each of the plurality of electronic messages to obtain identityinformation about an entity associated with each electronic message;means for searching a first database for additional data related to theobtained identity information; means for retrieving additional datarelated to the obtained identity information from the first database;and means for adjusting a display of the plurality of electronicmessages based on the retrieved additional data.
 94. The computingdevice of claim 93, wherein the plurality of electronic messages areemail messages.
 95. The computing device of claim 93, wherein means forparsing each of the plurality of electronic messages to obtain identityinformation about the entity associated with each electronic messagecomprises means for parsing each of the plurality of electronic messagesto obtain identity information about one of a recipient of eachelectronic message, a sender of the electronic message, an individualmentioned in each electronic message, and a company mentioned in eachelectronic message.
 96. The computing device of claim 93, furthercomprising means for accessing the first database via the Internet. 97.The computing device of claim 93, wherein the first database is acontacts database.
 98. The computing device of claim 93, furthercomprising: means for storing at least a portion of the retrievedadditional data related to the obtained identity information in a priorsearch results database; means for searching the prior search resultsdatabase for previously retrieve additional data related to the obtainedidentity information; and means for accessing previously retrieveadditional data related to the obtained identity information from theprior search results database, wherein means for searching the firstdatabase and retrieving additional data from the first databasecomprises means for searching the first database and retrievingadditional data from the first database if no previously retrieveadditional data related to the obtained identity information isretrieved from the prior search results database.
 99. The computingdevice of claim 96, wherein means for searching the first database andretrieving additional data from the first database comprises means forsearching the first database and retrieving additional data from thefirst database if previously retrieved additional data related to theobtained identity information is retrieved from the prior search resultsdatabase but the time since a last search exceeds a predeterminedthreshold.
 100. The computing device of claim 93, wherein means foradjusting a display of the plurality of electronic messages based on theretrieved additional data comprises means for modifying a display of atleast one of the plurality of electronic messages based upon animportance value calculated by applying an algorithm to the additionaldata retrieved for each electronic message.
 101. The computing device ofclaim 93, wherein means for adjusting a display of the plurality ofelectronic messages based on the retrieved additional data comprisesmeans for sorting the plurality of electronic messages by applying analgorithm to the additional data retrieved for each electronic messageto generate an importance value.
 102. The computing device of claim 93,wherein means for adjusting a display of the plurality of electronicmessages based on the retrieved additional data comprises: means forcalculating an importance value for each electronic message based on aplurality of importance factors determined from the additional data; andmeans for sorting the plurality of electronic messages based on thecalculated importance value.
 103. The computing device of claim 102,wherein the additional data is selected from the group consisting ofcompany name, job title, age, gender, ethnicity, income, socialnetworking data, social network linkages, Google™ hits, alma mater, homevalue, home address, images, political affiliation, political donations,number of times a reply has been sent to a sender of the message, numberof times a message from a sender has been received but not opened, anddistance to sender's company.
 104. The computing device of claim 102,wherein means for calculating an importance value for each electronicmessage based on a plurality of importance factors determined from theadditional data comprises: means for parsing the electronic message toobtain information within the message body to determine a time requiredto review the message; means for determining a time required to reviewimportance factor based on the determined time required to review themessage; and means for including the determined required time to reviewimportance factor as one of the plurality of importance factors used tocalculate the importance value.
 105. The computing device of claim 102,wherein means for calculating an importance value for each electronicmessage based on a plurality of importance factors determined from theadditional data comprises: means for parsing the electronic message todetermine its original Internet portal address; means for determining anExternalOrInternal importance factor based on the original Internetportal address; and means for including the determinedExternalOrInternal importance factor as one of the plurality ofimportance factors used to calculate the importance value.
 106. Thecomputing device of claim 102, wherein means for calculating animportance value for each electronic message based on a plurality ofimportance factors determined from the additional data comprises: meansfor parsing the electronic message to determine the identity of asender; means for determining a HowOftenIHaveReplied importance factorbase on the identity of a sender; and means for including the determinedHowOftenIHaveReplied importance factor as one of the plurality ofimportance factors used to calculate the importance value.
 107. Thecomputing device of claim 102, wherein means for calculating animportance value for each electronic message based on a plurality ofimportance factors determined from the additional data comprises: meansfor parsing the electronic message to determine the identity of asender; means for determining a political party of the sender based onthe identity of a sender; means for determining a PoliticalPartyimportance factor base on the determined political party; and means forincluding the determined PoliticalParty importance factor as one of theplurality of importance factors used to calculate the importance value.108. The computing device of claim 102, wherein means for calculating animportance value for each electronic message based on a plurality ofimportance factors determined from the additional data comprises: meansfor parsing the electronic message to determine the identity of asender; means for obtaining images of the sender based on the identityof a sender; means for determining Attractiveness importance factor baseon the obtained images; and means for including the determinedAttractiveness importance factor as one of the plurality of importancefactors used to calculate the importance value.
 109. The computingdevice of claim 102, wherein means for calculating an importance valuefor each electronic message based on a plurality of importance factorsdetermined from the additional data comprises: means for parsing theelectronic message to determine the identity of a sender; means fordetermining a Gender of the sender based on the identity of the sender;means for determining a gender importance factor base on the gender ofthe sender; and means for including the determined gender importancefactor as one of the plurality of importance factors used to calculatethe importance value.
 110. The computing device of claim 102, whereinmeans for calculating an importance value for each electronic messagebased on a plurality of importance factors determined from theadditional data comprises: means for parsing the electronic message todetermine the date of the message; means for determining a DateSentimportance factor base on the date of the message; and means forincluding the determined DateSent importance factor as one of theplurality of importance factors used to calculate the importance value.111. The computing device of claim 102, wherein means for calculating animportance value for each electronic message based on a plurality ofimportance factors determined from the additional data comprises: meansfor parsing the electronic message to determine the identity of asender; means for determining a Preapproved importance factor base onthe identity of a sender; and means for including the determinedrequired to review importance factor as one of the plurality ofimportance factors used to calculate the importance value.
 112. Thecomputing device of claim 102, wherein means for calculating animportance value for each electronic message based on a plurality ofimportance factors determined from the additional data comprises: meansfor parsing the electronic message to obtain a keyword; means fordetermining a Keyword importance factor base on obtained keywords; andmeans for including the determined Keyword importance factor as one ofthe plurality of importance factors used to calculate the importancevalue.
 113. The computing device of claim 102, wherein means forcalculating an importance value for each electronic message based on aplurality of importance factors determined from the additional datacomprises: means for parsing the electronic message to determine a listof recipients of the message; means for determining a SentJustToMeimportance factor base on the list of recipients of the message; andmeans for including the determined SentJustToMe importance factor as oneof the plurality of importance factors used to calculate the importancevalue.
 114. The computing device of claim 102, wherein means forcalculating an importance value for each electronic message based on aplurality of importance factors determined from the additional datacomprises: means for parsing the electronic message to determine theidentity of a sender's company; means for determining a CompanyCareAboutimportance factor base on the identity of a sender's company; and meansfor including the determined CompanyCareAbout importance factor as oneof the plurality of importance factors used to calculate the importancevalue.
 115. The computing device of claim 102, wherein means forcalculating an importance value for each electronic message based on aplurality of importance factors determined from the additional datacomprises: means for parsing the electronic message to determine theidentity of a sender; means for determining an alma mater of the senderbased on the identify of the sender; means for determining an Alumimportance factor base on the determined alma mater; and means forincluding the determined Alum importance factor as one of the pluralityof importance factors used to calculate the importance value.
 116. Thecomputing device of claim 102, wherein means for calculating animportance value for each electronic message based on a plurality ofimportance factors determined from the additional data comprises: meansfor parsing the electronic message to determine the identity of asender; means for determining a FamilyMember importance factor base onthe identity of a sender; and means for including the determinedFamilyMember importance factor as one of the plurality of importancefactors used to calculate the importance value.
 117. The computingdevice of claim 102, wherein means for calculating an importance valuefor each electronic message based on a plurality of importance factorsdetermined from the additional data comprises: means for parsing theelectronic message to determine the identity of a sender; means fordetermining an estimated wealth of the sender based on the identity of asender means for determining an EstimatedWealth importance factor baseon the estimated wealth of the sender; and means for including thedetermined EstimatedWealth importance factor as one of the plurality ofimportance factors used to calculate the importance value.
 118. Thecomputing device of claim 102, wherein means for calculating animportance value for each electronic message based on a plurality ofimportance factors determined from the additional data comprises: meansfor parsing the electronic message to determine the identity of asender; means for accessing a social network based on the identity of asender to determine a number of social network connections associatedwith the sender; means for determining a Popularity importance factorbase sender connections on the determined number of social networkconnections associated with the sender; and means for including thedetermined Popularity importance factor as one of the plurality ofimportance factors used to calculate the importance value.
 119. Thecomputing device of claim 102, wherein means for calculating animportance value for each electronic message based on a plurality ofimportance factors determined from the additional data comprises: meansfor parsing the electronic message to determine the identity of asender; means for accessing a social network based on the identity of asender; means for determining a FriendsInCommon importance factor baseon sender connections identified on the social network; and means forincluding the determined FriendsInCommon importance factor as one of theplurality of importance factors used to calculate the importance value.120. The computing device of claim 102, wherein means for calculating animportance value for each electronic message based on a plurality ofimportance factors determined from the additional data comprises: meansfor parsing the electronic message to determine the identity of asender; means for determining a measure of how much the sender hastraveled by searching a database using the identity of a sender; meansfor determining a WellTraveled? importance factor base on the measure ofhow much the sender has traveled; and means for including the determinedWellTraveled? importance factor as one of the plurality of importancefactors used to calculate the importance value.
 121. The computingdevice of claim 102, wherein means for calculating an importance valuefor each electronic message based on a plurality of importance factorsdetermined from the additional data comprises: means for parsing theelectronic message to determine the types of punctuation used in themessage; means for determining a NumberOF_?_Marks importance factor baseon the types of punctuation used in the message; and means for includingthe determined NumberOF_?_Marks importance factor as one of theplurality of importance factors used to calculate the importance value.122. The computing device of claim 102, wherein means for calculating animportance value for each electronic message based on a plurality ofimportance factors determined from the additional data comprises: meansfor parsing the electronic message to determine the types of punctuationused in the message; means for determining a NumberOf_!_Marks importancefactor base on the types of punctuation used in the message; and meansfor including the determined NumberOf_!_Marks importance factor as oneof the plurality of importance factors used to calculate the importancevalue.
 123. The computing device of claim 102, wherein means forcalculating an importance value for each electronic message based on aplurality of importance factors determined from the additional datacomprises: means for parsing the electronic message to obtain words usedin the message; means for determining a FriendlinessOfMessage importancefactor base on the words used in the message; and means for includingthe determined FriendlinessOfMessage importance factor as one of theplurality of importance factors used to calculate the importance value.124. The computing device of claim 102, wherein means for calculating animportance value for each electronic message based on a plurality ofimportance factors determined from the additional data comprises: meansfor parsing the electronic message to determine the identity of asender; means for accessing a database using the identity of the senderto determine an age of the sender; means for determining an Ageimportance factor base on the determined age of the sender; and meansfor including the determined Age importance factor as one of theplurality of importance factors used to calculate the importance value.125. The computing device of claim 102, wherein means for calculating animportance value for each electronic message based on a plurality ofimportance factors determined from the additional data comprises: meansfor parsing the electronic message to determine the identity of asender; means for determining a nation of origin of the sender based onthe identity of the sender; means for determining a NationalOriginimportance factor base on the determined nation of origin of the sender;and means for including the determined NationalOrigin importance factoras one of the plurality of importance factors used to calculate theimportance value.
 126. The computing device of claim 102, wherein meansfor calculating an importance value for each electronic message based ona plurality of importance factors determined from the additional datacomprises: means for parsing the electronic message to determine theidentity of a sender; means for accessing a database to obtain images ofthe sender based on the identity of the sender; means for determining askin tone of the sender based on the obtained images of the sender;means for determining a ColorOfSkin importance factor base on thedetermined skin tone; and means for including the determined ColorOfSkinimportance factor as one of the plurality of importance factors used tocalculate the importance value.
 127. The computing device of claim 102,wherein means for calculating an importance value for each electronicmessage based on a plurality of importance factors determined from theadditional data comprises: means for parsing the electronic message todetermine the identity of a sender; means for accessing a database usingthe identity of the sender to determine a measure of electronic messagesreceived from the sender that previously have been read but not repliedto; means for determining a ReadButNotRepliedTo importance factor baseon the determined measure of electronic messages received from thesender that previously have been read but not replied to; and means forincluding the determined ReadButNotRepliedTo importance factor as one ofthe plurality of importance factors used to calculate the importancevalue.
 128. The computing device of claim 102, wherein means forcalculating an importance value for each electronic message based on aplurality of importance factors determined from the additional datacomprises: means for parsing the electronic message to determine theidentity of a sender; means for accessing a database using the identityof the sender to determine a measure of electronic messages previouslyreceived from the sender that have not been opened; means fordetermining a ReceivedButNotOpened importance factor base on thedetermined measure of electronic messages previously received from thesender that have not been opened; and means for including the determinedReceivedButNotOpened importance factor as one of the plurality ofimportance factors used to calculate the importance value.
 129. Thecomputing device of claim 102, wherein means for calculating animportance value for each electronic message based on a plurality ofimportance factors determined from the additional data comprises: meansfor parsing the electronic message to determine an identity of asender's company; means for determining a location of the sender'scompany; means for determining a distance to the location of thesender's company; means for determining a DistanceFromCompany importancefactor based on the determined distance to the location of the sender'scompany; and means for including the determined DistanceFromCompanyimportance factor as one of the plurality of importance factors used tocalculate the importance value.
 130. The computing device of claim 102,further comprising means for highlighting at least a portion of adisplay of each electronic message based upon the importance value. 131.The computing device of claim 102, wherein means for calculating animportance value for each electronic message comprises: means formultiplying a weighting factor times an importance factor based on anadditional data related to the obtained identity information.
 132. Thecomputing device of claim 102, wherein means for calculating animportance value for each electronic message comprises: means forapplying a first algorithm to a first type of additional data related tothe obtained identity information to obtain a first criterion importancefactor; means for applying a second algorithm to a second type ofadditional data related to the obtained identity information to obtain asecond criterion importance factor; and means for calculating theimportance value by summing a product of the first criterion importancefactor times a first weighting factor and a product of the secondcriterion importance factor times a second weighting factor.
 133. Thecomputing device of claim 132, further comprising means for receivinguser inputs selecting criteria for sorting the plurality of electronicmessages, wherein the first type of additional data, the firstalgorithm, the second type of additional data, and the second algorithmare determined based upon the received user inputs.
 134. The computingdevice of claim 132, further means for comprising receiving user inputsidentifying priorities for sorting the plurality of electronic messages,wherein the first weighting factor and the second weighting factor aredetermined based upon the receive user inputs.
 135. The computing deviceof claim 132, wherein means for searching the first database foradditional data related to the obtained identity information comprisesmeans for searching the first database for additional data related tothe obtained identity information relevant to an algorithm for which acorresponding weighting factor is greater than a threshold value. 136.The computing device of claim 132, further comprising means fordisplaying a graphical user interface including user-interface iconsthat a user can manipulate with a user interface pointing device toindicate relative priorities of importance criteria, wherein means forreceiving user inputs identifying priorities for sorting the pluralityof electronic messages comprises means for determining usermanipulations of the user-interface icons included in the displayedgraphical user interface and interpreting the user manipulations as arelative priority.
 137. The computing device of claim 132, furthercomprising means for receiving user inputs identifying a condition to becompared to one of the first or second types of additional data and aconditional operation to be performed on an electronic message when thecondition is satisfied by the one of the first or second types ofadditional data.
 138. The computing device of claim 93, wherein thecomputing device is a personal computer.
 139. The computing device ofclaim 93, wherein the computing device is a server, and wherein meansfor adjusting the display of the plurality of electronic messagescomprises means for adjusting the plurality of messages stored in memoryprior to being downloaded by a recipient user computer.
 140. Aprocessor-readable storage medium having stored thereonprocessor-executable instructions configured to cause a processor toperform operations comprising: parsing each of a plurality of electronicmessages to obtain identity information about an entity associated witheach electronic message; searching a first database for additional datarelated to the obtained identity information; retrieving additional datarelated to the obtained identity information from the first database;and adjusting a display of the plurality of electronic messages based onthe retrieved additional data.
 141. The processor-readable storagemedium of claim 140, wherein the stored processor-executableinstructions are configured to cause a processor to perform operationssuch that the plurality of electronic messages are email messages. 142.The processor-readable storage medium of claim 140, wherein the storedprocessor-executable instructions are configured to cause a processor toperform operations such that the entity is selected from a recipient ofeach electronic message, a sender of the electronic message, anindividual mentioned in each electronic message, and a company mentionedin each electronic message.
 143. The processor-readable storage mediumof claim 140, wherein the stored processor-executable instructions areconfigured to cause a processor to perform operations such that thefirst database is accessed via the Internet through the communicationcircuit.
 144. The processor-readable storage medium of claim 140,wherein the stored processor-executable instructions are configured tocause a processor to perform operations such that the first database isa contacts database stored in the memory.
 145. The processor-readablestorage medium of claim 140, wherein the stored processor-executableinstructions are configured to cause a processor to perform operationsfurther comprising: storing at least a portion of the retrievedadditional data related to the obtained identity information in a priorsearch results database; searching the prior search results database forpreviously retrieve additional data related to the obtained identityinformation; and accessing previously retrieve additional data relatedto the obtained identity information from the prior search resultsdatabase, wherein searching the first database and retrieving additionaldata from the first database are performed if no previously retrieveadditional data related to the obtained identity information isretrieved from the prior search results database.
 146. Theprocessor-readable storage medium of claim 145, wherein the storedprocessor-executable instructions are configured to cause a processor toperform operations such that searching the first database and retrievingadditional data from the first database are performed if previouslyretrieved additional data related to the obtained identity informationis retrieved from the prior search results database but the time since alast search exceeds a predetermined threshold.
 147. Theprocessor-readable storage medium of claim 140, wherein the storedprocessor-executable instructions are configured to cause a processor toperform operations such that adjusting a display of the plurality ofelectronic messages based on the retrieved additional data comprisesmodifying a display of at least one of the plurality of electronicmessages based upon an importance value calculated by applying analgorithm to the additional data retrieved for each electronic message.148. The processor-readable storage medium of claim 140, wherein thestored processor-executable instructions are configured to cause aprocessor to perform operations such that adjusting a display of theplurality of electronic messages based on the retrieved additional datacomprises sorting the plurality of electronic messages by applying analgorithm to the additional data retrieved for each electronic messageto generate an importance value.
 149. The processor-readable storagemedium of claim 140, wherein the stored processor-executableinstructions are configured to cause a processor to perform operationssuch that adjusting a display of the plurality of electronic messagesbased on the retrieved additional data comprises: calculating animportance value for each electronic message based on a plurality ofimportance factors determined from the additional data; and sorting theplurality of electronic messages based on the calculated importancevalue.
 150. The processor-readable storage medium of claim 149, whereinthe stored processor-executable instructions are configured to cause aprocessor to perform operations such that the additional data isselected from the group consisting of company name, job title, age,gender, ethnicity, income, social networking data, social networklinkages, Google™ hits, alma mater, home value, home address, images,political affiliation, political donations, number of times a reply hasbeen sent to a sender of the message, number of times a message from asender has been received but not opened, and distance to sender'scompany.
 151. The processor-readable storage medium of claim 149,wherein the stored processor-executable instructions are configured tocause a processor to perform operations such that calculating animportance value for each electronic message based on a plurality ofimportance factors determined from the additional data comprises:parsing the electronic message to obtain information within the messagebody to determine a time required to review the message; determining atime required to review importance factor based on the determined timerequired to review the message; and including the determined requiredtime to review importance factor as one of the plurality of importancefactors used to calculate the importance value.
 152. Theprocessor-readable storage medium of claim 149, wherein the storedprocessor-executable instructions are configured to cause a processor toperform operations such that calculating an importance value for eachelectronic message based on a plurality of importance factors determinedfrom the additional data comprises: parsing the electronic message todetermine its original Internet portal address; determining anExternalOrInternal importance factor based on the original Internetportal address; and including the determined ExternalOrInternalimportance factor as one of the plurality of importance factors used tocalculate the importance value.
 153. The processor-readable storagemedium of claim 149, wherein the stored processor-executableinstructions are configured to cause a processor to perform operationssuch that calculating an importance value for each electronic messagebased on a plurality of importance factors determined from theadditional data comprises: parsing the electronic message to determinethe identity of a sender; determining a HowOftenIHaveReplied importancefactor base on the identity of a sender; and including the determinedHowOftenIHaveReplied importance factor as one of the plurality ofimportance factors used to calculate the importance value.
 154. Theprocessor-readable storage medium of claim 149, wherein the storedprocessor-executable instructions are configured to cause a processor toperform operations such that calculating an importance value for eachelectronic message based on a plurality of importance factors determinedfrom the additional data comprises: parsing the electronic message todetermine the identity of a sender; determining a political party of thesender based on the identity of a sender; determining a PoliticalPartyimportance factor base on the determined political party; and includingthe determined PoliticalParty importance factor as one of the pluralityof importance factors used to calculate the importance value.
 155. Theprocessor-readable storage medium of claim 149, wherein the storedprocessor-executable instructions are configured to cause a processor toperform operations such that calculating an importance value for eachelectronic message based on a plurality of importance factors determinedfrom the additional data comprises: parsing the electronic message todetermine the identity of a sender; obtaining images of the sender basedon the identity of a sender; determining Attractiveness importancefactor base on the obtained images; and including the determinedAttractiveness importance factor as one of the plurality of importancefactors used to calculate the importance value.
 156. Theprocessor-readable storage medium of claim 149, wherein the storedprocessor-executable instructions are configured to cause a processor toperform operations such that calculating an importance value for eachelectronic message based on a plurality of importance factors determinedfrom the additional data comprises: parsing the electronic message todetermine the identity of a sender; determining a Gender of the senderbased on the identity of the sender; determining a gender importancefactor base on the gender of the sender; and including the determinedgender importance factor as one of the plurality of importance factorsused to calculate the importance value.
 157. The processor-readablestorage medium of claim 149, wherein the stored processor-executableinstructions are configured to cause a processor to perform operationssuch that calculating an importance value for each electronic messagebased on a plurality of importance factors determined from theadditional data comprises: parsing the electronic message to determinethe date of the message; determining a DateSent importance factor baseon the date of the message; and including the determined DateSentimportance factor as one of the plurality of importance factors used tocalculate the importance value.
 158. The processor-readable storagemedium of claim 149, wherein the stored processor-executableinstructions are configured to cause a processor to perform operationssuch that calculating an importance value for each electronic messagebased on a plurality of importance factors determined from theadditional data comprises: parsing the electronic message to determinethe identity of a sender; determining a Preapproved importance factorbase on the identity of a sender; and including the determined requiredto review importance factor as one of the plurality of importancefactors used to calculate the importance value.
 159. Theprocessor-readable storage medium of claim 149, wherein the storedprocessor-executable instructions are configured to cause a processor toperform operations such that calculating an importance value for eachelectronic message based on a plurality of importance factors determinedfrom the additional data comprises: parsing the electronic message toobtain a keyword; determining a Keyword importance factor base onobtained keywords; and including the determined Keyword importancefactor as one of the plurality of importance factors used to calculatethe importance value.
 160. The processor-readable storage medium ofclaim 149, wherein the stored processor-executable instructions areconfigured to cause a processor to perform operations such thatcalculating an importance value for each electronic message based on aplurality of importance factors determined from the additional datacomprises: parsing the electronic message to determine a list ofrecipients of the message; determining a SentJustToMe importance factorbase on the list of recipients of the message; and including thedetermined SentJustToMe importance factor as one of the plurality ofimportance factors used to calculate the importance value.
 161. Theprocessor-readable storage medium of claim 149, wherein the storedprocessor-executable instructions are configured to cause a processor toperform operations such that calculating an importance value for eachelectronic message based on a plurality of importance factors determinedfrom the additional data comprises: parsing the electronic message todetermine the identity of a sender's company; determining aCompanyCareAbout importance factor base on the identity of a sender'scompany; and including the determined CompanyCareAbout importance factoras one of the plurality of importance factors used to calculate theimportance value.
 162. The processor-readable storage medium of claim149, wherein the stored processor-executable instructions are configuredto cause a processor to perform operations such that calculating animportance value for each electronic message based on a plurality ofimportance factors determined from the additional data comprises:parsing the electronic message to determine the identity of a sender;determining an alma mater of the sender based on the identify of thesender; determining an Alum importance factor base on the determinedalma mater; and including the determined Alum importance factor as oneof the plurality of importance factors used to calculate the importancevalue.
 163. The processor-readable storage medium of claim 149, whereinthe stored processor-executable instructions are configured to cause aprocessor to perform operations such that calculating an importancevalue for each electronic message based on a plurality of importancefactors determined from the additional data comprises: parsing theelectronic message to determine the identity of a sender; determining aFamilyMember importance factor base on the identity of a sender; andincluding the determined FamilyMember importance factor as one of theplurality of importance factors used to calculate the importance value.164. The processor-readable storage medium of claim 149, wherein thestored processor-executable instructions are configured to cause aprocessor to perform operations such that calculating an importancevalue for each electronic message based on a plurality of importancefactors determined from the additional data comprises: parsing theelectronic message to determine the identity of a sender; determining anestimated wealth of the sender based on the identity of a senderdetermining an EstimatedWealth importance factor base on the estimatedwealth of the sender; and including the determined EstimatedWealthimportance factor as one of the plurality of importance factors used tocalculate the importance value.
 165. The processor-readable storagemedium of claim 149, wherein the stored processor-executableinstructions are configured to cause a processor to perform operationssuch that calculating an importance value for each electronic messagebased on a plurality of importance factors determined from theadditional data comprises: parsing the electronic message to determinethe identity of a sender; accessing a social network based on theidentity of a sender to determine a number of social network connectionsassociated with the sender; determining a Popularity importance factorbase sender connections on the determined number of social networkconnections associated with the sender; and including the determinedPopularity importance factor as one of the plurality of importancefactors used to calculate the importance value.
 166. Theprocessor-readable storage medium of claim 149, wherein the storedprocessor-executable instructions are configured to cause a processor toperform operations such that calculating an importance value for eachelectronic message based on a plurality of importance factors determinedfrom the additional data comprises: parsing the electronic message todetermine the identity of a sender; accessing a social network based onthe identity of a sender; determining a FriendsInCommon importancefactor base on sender connections identified on the social network; andincluding the determined FriendsInCommon importance factor as one of theplurality of importance factors used to calculate the importance value.167. The processor-readable storage medium of claim 149, wherein thestored processor-executable instructions are configured to cause aprocessor to perform operations such that calculating an importancevalue for each electronic message based on a plurality of importancefactors determined from the additional data comprises: parsing theelectronic message to determine the identity of a sender; determining ameasure of how much the sender has traveled by searching a databaseusing the identity of a sender; determining a WellTraveled? importancefactor base on the measure of how much the sender has traveled; andincluding the determined WellTraveled? importance factor as one of theplurality of importance factors used to calculate the importance value.168. The processor-readable storage medium of claim 149, wherein thestored processor-executable instructions are configured to cause aprocessor to perform operations such that calculating an importancevalue for each electronic message based on a plurality of importancefactors determined from the additional data comprises: parsing theelectronic message to determine the types of punctuation used in themessage; determining a NumberOF_?_Marks importance factor base on thetypes of punctuation used in the message; and including the determinedNumberOF_?_Marks importance factor as one of the plurality of importancefactors used to calculate the importance value.
 169. Theprocessor-readable storage medium of claim 149, wherein the storedprocessor-executable instructions are configured to cause a processor toperform operations such that calculating an importance value for eachelectronic message based on a plurality of importance factors determinedfrom the additional data comprises: parsing the electronic message todetermine the types of punctuation used in the message; determining aNumberOf_!_Marks importance factor base on the types of punctuation usedin the message; and including the determined NumberOf_!_Marks importancefactor as one of the plurality of importance factors used to calculatethe importance value.
 170. The processor-readable storage medium ofclaim 149, wherein the stored processor-executable instructions areconfigured to cause a processor to perform operations such thatcalculating an importance value for each electronic message based on aplurality of importance factors determined from the additional datacomprises: parsing the electronic message to obtain words used in themessage; determining a FriendlinessOfMessage importance factor base onthe words used in the message; and including the determinedFriendlinessOfMessage importance factor as one of the plurality ofimportance factors used to calculate the importance value.
 171. Theprocessor-readable storage medium of claim 149, wherein the storedprocessor-executable instructions are configured to cause a processor toperform operations such that calculating an importance value for eachelectronic message based on a plurality of importance factors determinedfrom the additional data comprises: parsing the electronic message todetermine the identity of a sender; accessing a database using theidentity of the sender to determine an age of the sender; determining anAge importance factor base on the determined age of the sender; andincluding the determined Age importance factor as one of the pluralityof importance factors used to calculate the importance value.
 172. Theprocessor-readable storage medium of claim 149, wherein the storedprocessor-executable instructions are configured to cause a processor toperform operations such that calculating an importance value for eachelectronic message based on a plurality of importance factors determinedfrom the additional data comprises: parsing the electronic message todetermine the identity of a sender; determining a nation of origin ofthe sender based on the identity of the sender; determining aNationalOrigin importance factor base on the determined nation of originof the sender; and including the determined NationalOrigin importancefactor as one of the plurality of importance factors used to calculatethe importance value.
 173. The processor-readable storage medium ofclaim 149, wherein the stored processor-executable instructions areconfigured to cause a processor to perform operations such thatcalculating an importance value for each electronic message based on aplurality of importance factors determined from the additional datacomprises: parsing the electronic message to determine the identity of asender; accessing a database to obtain images of the sender based on theidentity of the sender; determining a skin tone of the sender based onthe obtained images of the sender; determining a ColorOfSkin importancefactor base on the determined skin tone; and including the determinedColorOfSkin importance factor as one of the plurality of importancefactors used to calculate the importance value.
 174. Theprocessor-readable storage medium of claim 149, wherein the storedprocessor-executable instructions are configured to cause a processor toperform operations such that calculating an importance value for eachelectronic message based on a plurality of importance factors determinedfrom the additional data comprises: parsing the electronic message todetermine the identity of a sender; accessing a database using theidentity of the sender to determine a measure of electronic messagesreceived from the sender that previously have been read but not repliedto; determining a ReadButNotRepliedTo importance factor base on thedetermined measure of electronic messages received from the sender thatpreviously have been read but not replied to; and including thedetermined ReadButNotRepliedTo importance factor as one of the pluralityof importance factors used to calculate the importance value.
 175. Theprocessor-readable storage medium of claim 149, wherein the storedprocessor-executable instructions are configured to cause a processor toperform operations such that calculating an importance value for eachelectronic message based on a plurality of importance factors determinedfrom the additional data comprises: parsing the electronic message todetermine the identity of a sender; accessing a database using theidentity of the sender to determine a measure of electronic messagespreviously received from the sender that have not been opened;determining a ReceivedButNotOpened importance factor base on thedetermined measure of electronic messages previously received from thesender that have not been opened; and including the determinedReceivedButNotOpened importance factor as one of the plurality ofimportance factors used to calculate the importance value.
 176. Theprocessor-readable storage medium of claim 149, wherein the storedprocessor-executable instructions are configured to cause a processor toperform operations such that calculating an importance value for eachelectronic message based on a plurality of importance factors determinedfrom the additional data comprises: parsing the electronic message todetermine an identity of a sender's company; determining a location ofthe sender's company; determining a distance to the location of thesender's company; determining a DistanceFromCompany importance factorbased on the determined distance to the location of the sender'scompany; and including the determined DistanceFromCompany importancefactor as one of the plurality of importance factors used to calculatethe importance value.
 177. The processor-readable storage medium ofclaim 149, wherein the stored processor-executable instructions areconfigured to cause a processor to perform operations further comprisinghighlighting at least a portion of a display of each electronic messagebased upon the importance value.
 178. The processor-readable storagemedium of claim 149, wherein the stored processor-executableinstructions are configured to cause a processor to perform operationssuch that calculating an importance value for each electronic messagecomprises: multiplying a weighting factor times an importance factorbased on an additional data related to the obtained identityinformation.
 179. The processor-readable storage medium of claim 149,wherein the stored processor-executable instructions are configured tocause a processor to perform operations such that calculating animportance value for each electronic message comprises: applying a firstalgorithm to a first type of additional data related to the obtainedidentity information to obtain a first criterion importance factor;applying a second algorithm to a second type of additional data relatedto the obtained identity information to obtain a second criterionimportance factor; and calculating the importance value by summing aproduct of the first criterion importance factor times a first weightingfactor and a product of the second criterion importance factor times asecond weighting factor.
 180. The processor-readable storage medium ofclaim 179, wherein the stored processor-executable instructions areconfigured to cause a processor to perform operations further comprisingreceiving user inputs selecting criteria for sorting the plurality ofelectronic messages, wherein the first type of additional data, thefirst algorithm, the second type of additional data, and the secondalgorithm are determined based upon the received user inputs.
 181. Theprocessor-readable storage medium of claim 179, wherein the storedprocessor-executable instructions are configured to cause a processor toperform operations further comprising receiving user inputs identifyingpriorities for sorting the plurality of electronic messages, wherein thefirst weighting factor and the second weighting factor are determinedbased upon the receive user inputs.
 182. The processor-readable storagemedium of claim 181, wherein the stored processor-executableinstructions are configured to cause a processor to perform operationssuch that searching the first database for additional data related tothe obtained identity information is only performed for informationrelevant to an algorithm for which a corresponding weighting factor isgreater than a threshold value.
 183. The processor-readable storagemedium of claim 181, wherein the stored processor-executableinstructions are configured to cause a processor to perform operationsfurther comprising displaying a graphical user interface includinguser-interface icons that a user can manipulate with a user interfacepointing device to indicate relative priorities of importance criteria,wherein receiving user inputs identifying priorities for sorting theplurality of electronic messages comprises determining usermanipulations of the user-interface icons included in the displayedgraphical user interface and interpreting the user manipulations as arelative priority.
 184. The processor-readable storage medium of claim181, wherein the stored processor-executable instructions are configuredto cause a processor to perform operations further comprising receivinguser inputs identifying a condition to be compared to one of the firstor second types of additional data and a conditional operation to beperformed on an electronic message when the condition is satisfied bythe one of the first or second types of additional data.
 185. Theprocessor-readable storage medium of claim 140, wherein the storedprocessor-executable instructions are configured to be executed by aprocessor of a personal computer.
 186. The processor-readable storagemedium of claim 140, wherein the stored processor-executableinstructions are configured to be executed by a processor of a server,wherein the stored processor-executable instructions are configured tocause the processor to perform operations to adjust the display of theplurality of electronic messages by adjusting the plurality of messagesstored in memory prior to being downloaded by a recipient user computer.